aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/xmod
diff options
context:
space:
mode:
authorAlkalus <3060479+draknyte1@users.noreply.github.com>2018-11-01 14:58:08 +0000
committerAlkalus <3060479+draknyte1@users.noreply.github.com>2018-11-01 14:58:08 +0000
commit2855aaffb538f5dae1fcbbbd051bfb4e3a5951c8 (patch)
tree140a276269b08386d24b35bf738d774b3079349d /src/Java/gtPlusPlus/xmod
parent1b5aaa09e22baa1f09d0777d1465fd61c2a810b4 (diff)
downloadGT5-Unofficial-2855aaffb538f5dae1fcbbbd051bfb4e3a5951c8.tar.gz
GT5-Unofficial-2855aaffb538f5dae1fcbbbd051bfb4e3a5951c8.tar.bz2
GT5-Unofficial-2855aaffb538f5dae1fcbbbd051bfb4e3a5951c8.zip
+ Added new Radioactive ore.
+ Added Custom Nuclear Texture Set. % More material work. $ Fixed issue allowing Multiblocks to have > 1 Control Core Hatch. $ Fixed Broken Ore texture for ENRICHED TextureSet. $ Fixed a few fluid recipes broken in the refactor.
Diffstat (limited to 'src/Java/gtPlusPlus/xmod')
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java23
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GregtechMTE_TeslaTower.java2
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialArcFurnace.java6
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCentrifuge.java6
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMultiMachine.java2
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialPlatePress.java2
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWashPlant.java2
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GT4Entity_AutoCrafter.java16
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_SolarTower.java2
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GT_MTE_LargeTurbine_SHSteam.java3
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GT_MTE_LargeTurbine_Steam.java3
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GregtechMetaTileEntity_LargerTurbineBase.java2
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/storage/GregtechMetaTileEntity_PowerSubStationController.java2
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_AlloySmelter.java3
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Extruder.java11
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Fluids.java470
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Ore.java704
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_ShapedCrafting.java26
18 files changed, 693 insertions, 592 deletions
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java b/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java
index 7c099f49ef..38e5681bdc 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java
@@ -755,8 +755,17 @@ GT_MetaTileEntity_MultiBlockBase {
}
//mControlCoreBus
- public boolean addControlCoreToMachineList(final IGregTechTileEntity aTileEntity, final int aBaseCasingIndex) {
- return addToMachineList(aTileEntity, aBaseCasingIndex);
+ public boolean addControlCoreToMachineList(final IGregTechTileEntity aTileEntity, final int aBaseCasingIndex) {
+ log("Found GT_MetaTileEntity_Hatch_ControlCore");
+ final IMetaTileEntity aMetaTileEntity = aTileEntity.getMetaTileEntity();
+ if (aMetaTileEntity == null) {
+ return false;
+ }
+ if (!mControlCoreBus.isEmpty()) {
+ return false;
+ }
+
+ return addToMachineListInternal(mControlCoreBus, aMetaTileEntity, aBaseCasingIndex);
}
@Override
@@ -775,7 +784,7 @@ GT_MetaTileEntity_MultiBlockBase {
//Handle Custom Hustoms
if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_ControlCore) {
log("Found GT_MetaTileEntity_Hatch_ControlCore");
- aDidAdd = addToMachineListInternal(mControlCoreBus, aMetaTileEntity, aBaseCasingIndex);
+ aDidAdd = addControlCoreToMachineList(aTileEntity, aBaseCasingIndex);
}
else if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_InputBattery) {
log("Found GT_MetaTileEntity_Hatch_InputBattery");
@@ -917,9 +926,13 @@ GT_MetaTileEntity_MultiBlockBase {
}
@Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
- resetRecipeMapForAllInputHatches();
+ public final void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
super.onScrewdriverRightClick(aSide, aPlayer, aX, aY, aZ);
+ onModeChangeByScrewdriver(aSide, aPlayer, aX, aY, aZ);
+ }
+
+ public void onModeChangeByScrewdriver(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
+ resetRecipeMapForAllInputHatches();
}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GregtechMTE_TeslaTower.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GregtechMTE_TeslaTower.java
index 0bc9014f01..43f317d25c 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GregtechMTE_TeslaTower.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GregtechMTE_TeslaTower.java
@@ -447,7 +447,7 @@ public class GregtechMTE_TeslaTower extends GregtechMeta_MultiBlockBase {
}
@Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
+ public void onModeChangeByScrewdriver(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
mMode = Utils.invertBoolean(mMode);
this.mInRange.clear();
if (mMode){
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialArcFurnace.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialArcFurnace.java
index 83984c1286..b2b4cdfda5 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialArcFurnace.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialArcFurnace.java
@@ -339,8 +339,7 @@ extends GregtechMeta_MultiBlockBase {
}
@Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
- super.onScrewdriverRightClick(aSide, aPlayer, aX, aY, aZ);
+ public void onModeChangeByScrewdriver(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
if (this.mSize > 3) {
this.mPlasmaMode = Utils.invertBoolean(mPlasmaMode);
if (mPlasmaMode) {
@@ -349,7 +348,8 @@ extends GregtechMeta_MultiBlockBase {
else {
PlayerUtils.messagePlayer(aPlayer, "["+EnumChatFormatting.RED+"MODE"+EnumChatFormatting.RESET+"] "+EnumChatFormatting.YELLOW+"Electric"+EnumChatFormatting.RESET);
}
- }
+ }
+ super.onScrewdriverRightClick(aSide, aPlayer, aX, aY, aZ);
}
@Override
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCentrifuge.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCentrifuge.java
index 3c99a74052..9a23567022 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCentrifuge.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialCentrifuge.java
@@ -195,15 +195,15 @@ extends GregtechMeta_MultiBlockBase {
}
@Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
- super.onScrewdriverRightClick(aSide, aPlayer, aX, aY, aZ);
+ public void onModeChangeByScrewdriver(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
this.mIsAnimated = Utils.invertBoolean(mIsAnimated);
if (this.mIsAnimated) {
PlayerUtils.messagePlayer(aPlayer, "Using Animated Turbine Texture.");
}
else {
PlayerUtils.messagePlayer(aPlayer, "Using Static Turbine Texture.");
- }
+ }
+ super.onScrewdriverRightClick(aSide, aPlayer, aX, aY, aZ);
}
@Override
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMultiMachine.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMultiMachine.java
index 7e14604266..cf780cbedf 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMultiMachine.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialMultiMachine.java
@@ -843,7 +843,7 @@ extends GregtechMeta_MultiBlockBase {
}
@Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
+ public void onModeChangeByScrewdriver(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
if (mInternalMode < 2) {
mInternalMode++;
}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialPlatePress.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialPlatePress.java
index aa13c8d712..36a880633f 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialPlatePress.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialPlatePress.java
@@ -186,7 +186,7 @@ public class GregtechMetaTileEntity_IndustrialPlatePress extends GregtechMeta_Mu
}
@Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
+ public void onModeChangeByScrewdriver(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
mFormingMode = Utils.invertBoolean(mFormingMode);
if (mFormingMode){
PlayerUtils.messagePlayer(aPlayer, "Now running in Forming Press Mode.");
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWashPlant.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWashPlant.java
index e7b2a9c4a5..c6ba185e77 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWashPlant.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/processing/GregtechMetaTileEntity_IndustrialWashPlant.java
@@ -358,7 +358,7 @@ extends GregtechMeta_MultiBlockBase {
}
@Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
+ public void onModeChangeByScrewdriver(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
mChemicalMode = Utils.invertBoolean(mChemicalMode);
if (mChemicalMode){
PlayerUtils.messagePlayer(aPlayer, "Wash Plant is now running in Chemical Bath Mode.");
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GT4Entity_AutoCrafter.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GT4Entity_AutoCrafter.java
index 64b64981e7..bb6a3c9631 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GT4Entity_AutoCrafter.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GT4Entity_AutoCrafter.java
@@ -224,7 +224,7 @@ public class GT4Entity_AutoCrafter extends GregtechMeta_MultiBlockBase {
private boolean isModernGT = true;
@Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
+ public void onModeChangeByScrewdriver(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
if (isModernGT && !CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK) {
isModernGT = false;
}
@@ -232,13 +232,13 @@ public class GT4Entity_AutoCrafter extends GregtechMeta_MultiBlockBase {
if (isModernGT && !CORE.GTNH) {
mMachineMode = mMachineMode.nextMode();
if (mMachineMode == MODE.CRAFTING) {
- PlayerUtils.messagePlayer(aPlayer, "Running the Auto-Crafter in mode: §dAuto-Crafting");
+ PlayerUtils.messagePlayer(aPlayer, "Running the Auto-Crafter in mode: �dAuto-Crafting");
} else if (mMachineMode == MODE.ASSEMBLY) {
- PlayerUtils.messagePlayer(aPlayer, "Running the Auto-Crafter in mode: §aAssembly");
+ PlayerUtils.messagePlayer(aPlayer, "Running the Auto-Crafter in mode: �aAssembly");
} else if (mMachineMode == MODE.DISASSEMBLY) {
- PlayerUtils.messagePlayer(aPlayer, "Running the Auto-Crafter in mode: §cDisassembly");
+ PlayerUtils.messagePlayer(aPlayer, "Running the Auto-Crafter in mode: �cDisassembly");
} else {
- PlayerUtils.messagePlayer(aPlayer, "Running the Auto-Crafter in mode: §eCircuit Assembly");
+ PlayerUtils.messagePlayer(aPlayer, "Running the Auto-Crafter in mode: �eCircuit Assembly");
}
}
//5.08 support
@@ -251,11 +251,11 @@ public class GT4Entity_AutoCrafter extends GregtechMeta_MultiBlockBase {
}
if (mMachineMode == MODE.CRAFTING) {
- PlayerUtils.messagePlayer(aPlayer, "You are now running the Auto-Crafter in mode: §dAuto-Crafting");
+ PlayerUtils.messagePlayer(aPlayer, "You are now running the Auto-Crafter in mode: �dAuto-Crafting");
} else if (mMachineMode == MODE.ASSEMBLY) {
- PlayerUtils.messagePlayer(aPlayer, "You are now running the Auto-Crafter in mode: §aAssembly");
+ PlayerUtils.messagePlayer(aPlayer, "You are now running the Auto-Crafter in mode: �aAssembly");
} else {
- PlayerUtils.messagePlayer(aPlayer, "You are now running the Auto-Crafter in mode: §cDisassembly");
+ PlayerUtils.messagePlayer(aPlayer, "You are now running the Auto-Crafter in mode: �cDisassembly");
}
}
super.onScrewdriverRightClick(aSide, aPlayer, aX, aY, aZ);
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_SolarTower.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_SolarTower.java
index 6e233f9035..04bdbd9647 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_SolarTower.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_SolarTower.java
@@ -249,7 +249,7 @@ extends GregtechMeta_MultiBlockBase {
}
@Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
+ public void onModeChangeByScrewdriver(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
super.onScrewdriverRightClick(aSide, aPlayer, aX, aY, aZ);
if (this.mHeight > 3) {}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GT_MTE_LargeTurbine_SHSteam.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GT_MTE_LargeTurbine_SHSteam.java
index e3405f37b8..e4016e6650 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GT_MTE_LargeTurbine_SHSteam.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GT_MTE_LargeTurbine_SHSteam.java
@@ -128,11 +128,12 @@ public class GT_MTE_LargeTurbine_SHSteam extends GregtechMetaTileEntity_LargerTu
}
@Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
+ public void onModeChangeByScrewdriver(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
if (aSide == getBaseMetaTileEntity().getFrontFacing()) {
looseFit^=true;
GT_Utility.sendChatToPlayer(aPlayer, looseFit ? "Fitting: Loose - More Flow" : "Fitting: Tight - More Efficiency");
}
+ super.onScrewdriverRightClick(aSide, aPlayer, aX, aY, aZ);
}
@Override
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GT_MTE_LargeTurbine_Steam.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GT_MTE_LargeTurbine_Steam.java
index 7a0ba50b52..ce30f92466 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GT_MTE_LargeTurbine_Steam.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GT_MTE_LargeTurbine_Steam.java
@@ -136,11 +136,12 @@ public class GT_MTE_LargeTurbine_Steam extends GregtechMetaTileEntity_LargerTurb
}
@Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
+ public void onModeChangeByScrewdriver(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
if (aSide == getBaseMetaTileEntity().getFrontFacing()) {
looseFit^=true;
GT_Utility.sendChatToPlayer(aPlayer, looseFit ? "Fitting: Loose - More Flow" : "Fitting: Tight - More Efficiency");
}
+ super.onScrewdriverRightClick(aSide, aPlayer, aX, aY, aZ);
}
@Override
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GregtechMetaTileEntity_LargerTurbineBase.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GregtechMetaTileEntity_LargerTurbineBase.java
index 27181a792e..575e8d9b73 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GregtechMetaTileEntity_LargerTurbineBase.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/turbines/GregtechMetaTileEntity_LargerTurbineBase.java
@@ -481,7 +481,7 @@ public abstract class GregtechMetaTileEntity_LargerTurbineBase extends GregtechM
@Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
+ public void onModeChangeByScrewdriver(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
if (!KeyboardUtils.isShiftKeyDown()) {
super.onScrewdriverRightClick(aSide, aPlayer, aX, aY, aZ);
}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/storage/GregtechMetaTileEntity_PowerSubStationController.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/storage/GregtechMetaTileEntity_PowerSubStationController.java
index 2bbe6e96f5..e925dc388b 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/storage/GregtechMetaTileEntity_PowerSubStationController.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/storage/GregtechMetaTileEntity_PowerSubStationController.java
@@ -568,7 +568,7 @@ public class GregtechMetaTileEntity_PowerSubStationController extends GregtechMe
}
@Override
- public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
+ public void onModeChangeByScrewdriver(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
mIsOutputtingPower = Utils.invertBoolean(mIsOutputtingPower);
if (mIsOutputtingPower) {
PlayerUtils.messagePlayer(aPlayer, "Sub-Station is now outputting power from the controller.");
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_AlloySmelter.java b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_AlloySmelter.java
index f0a816d405..6ed5eecd38 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_AlloySmelter.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_AlloySmelter.java
@@ -31,6 +31,7 @@ public class RecipeGen_AlloySmelter extends RecipeGen_Base {
final int tVoltageMultiplier = material.getMeltingPointK() >= 2800 ? 60 : 15;
//Nuggets
+ if (material.getIngot(1) != null && material.getNugget(1) != null)
GT_Values.RA.addAlloySmelterRecipe(
material.getIngot(1),
ItemList.Shape_Mold_Nugget.get(0),
@@ -39,6 +40,7 @@ public class RecipeGen_AlloySmelter extends RecipeGen_Base {
2 * tVoltageMultiplier);
//Gears
+ if (material.getIngot(1) != null && material.getGear(1) != null)
GT_Values.RA.addAlloySmelterRecipe(
material.getIngot(8),
ItemList.Shape_Mold_Gear.get(0),
@@ -47,6 +49,7 @@ public class RecipeGen_AlloySmelter extends RecipeGen_Base {
2 * tVoltageMultiplier);
//Ingot
+ if (material.getIngot(1) != null && material.getNugget(1) != null)
GT_Values.RA.addAlloySmelterRecipe(
material.getNugget(9),
ItemList.Shape_Mold_Ingot.get(0),
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Extruder.java b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Extruder.java
index 08008994ea..2fd7f93c2d 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Extruder.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Extruder.java
@@ -35,7 +35,7 @@ public class RecipeGen_Extruder extends RecipeGen_Base {
final int tVoltageMultiplier = material.getMeltingPointK() >= 2800 ? 60 : 15;
final ItemStack itemIngot = material.getIngot(1);
- final ItemStack plate_Single = material.getPlate(1);
+ final ItemStack itemPlate = material.getPlate(1);
final ItemStack itemGear = material.getGear(1);
final ItemStack shape_Plate = ItemList.Shape_Extruder_Plate.get(0);
@@ -49,6 +49,7 @@ public class RecipeGen_Extruder extends RecipeGen_Base {
Logger.WARNING("Generating Extruder recipes for "+material.getLocalizedName());
//Ingot Recipe
+ if (material.getIngot(1) != null && material.getBlock(1) != null)
if (addExtruderRecipe(
material.getBlock(1),
shape_Ingot,
@@ -62,6 +63,7 @@ public class RecipeGen_Extruder extends RecipeGen_Base {
}
//Block Recipe
+ if (material.getIngot(1) != null && material.getBlock(1) != null)
if (addExtruderRecipe(
material.getIngot(9),
shape_Block,
@@ -75,10 +77,11 @@ public class RecipeGen_Extruder extends RecipeGen_Base {
}
//Plate Recipe
+ if (material.getIngot(1) != null && material.getPlate(1) != null)
if (addExtruderRecipe(
itemIngot,
shape_Plate,
- plate_Single,
+ itemPlate,
10, 4 * tVoltageMultiplier)){
Logger.WARNING("Extruder Plate Recipe: "+material.getLocalizedName()+" - Success");
}
@@ -87,6 +90,7 @@ public class RecipeGen_Extruder extends RecipeGen_Base {
}
//Ring Recipe
+ if (material.getIngot(1) != null && material.getRing(1) != null)
if (!material.isRadioactive){
if (addExtruderRecipe(
itemIngot,
@@ -103,6 +107,7 @@ public class RecipeGen_Extruder extends RecipeGen_Base {
//Gear Recipe
+ if (material.getIngot(1) != null && material.getGear(1) != null)
if (!material.isRadioactive){
if (addExtruderRecipe(
material.getIngot(4),
@@ -119,6 +124,7 @@ public class RecipeGen_Extruder extends RecipeGen_Base {
//Rod Recipe
+ if (material.getIngot(1) != null && material.getRod(1) != null)
if (addExtruderRecipe(
itemIngot,
shape_Rod,
@@ -133,6 +139,7 @@ public class RecipeGen_Extruder extends RecipeGen_Base {
//Bolt Recipe
+ if (material.getIngot(1) != null && material.getBolt(1) != null)
if (!material.isRadioactive){
if (addExtruderRecipe(
itemIngot,
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Fluids.java b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Fluids.java
index 1f3c91c9cb..5e2675689b 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Fluids.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Fluids.java
@@ -18,11 +18,11 @@ public class RecipeGen_Fluids extends RecipeGen_Base {
MaterialGenerator.mRecipeMapsToGenerate.put(mRecipeGenMap);
}
- public RecipeGen_Fluids(final Material M){
+ public RecipeGen_Fluids(final Material M) {
this(M, false);
}
-
- public RecipeGen_Fluids(final Material M, final boolean dO){
+
+ public RecipeGen_Fluids(final Material M, final boolean dO) {
this.toGenerate = M;
this.disableOptional = dO;
mRecipeGenMap.add(this);
@@ -33,263 +33,269 @@ public class RecipeGen_Fluids extends RecipeGen_Base {
generateRecipes(this.toGenerate, this.disableOptional);
}
- private void generateRecipes(final Material material, final boolean dO){
+ private void generateRecipes(final Material material, final boolean dO) {
if (material == null) {
return;
}
-
- //Melting Shapes to fluid
- if (material.getFluid(1) != null && !material.getFluid(1).getUnlocalizedName().toLowerCase().contains("plasma")){
-
+
+ // Melting Shapes to fluid
+ if (material.getFluid(1) != null
+ && !material.getFluid(1).getUnlocalizedName().toLowerCase().contains("plasma")) {
+
if (!material.requiresBlastFurnace()) {
- //Ingot
- if (GT_Values.RA.addFluidExtractionRecipe(material.getIngot(1), //Input
- null, //Input 2
- material.getFluid(144), //Fluid Output
- 0, //Chance
- 1*20, //Duration
- 16 //Eu Tick
- )){
- Logger.WARNING("144l fluid extractor from 1 ingot Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING("144l fluid extractor from 1 ingot Recipe: "+material.getLocalizedName()+" - Failed");
- }
+ // Ingot
+ if (material.getIngot(1) != null)
+ if (GT_Values.RA.addFluidExtractionRecipe(material.getIngot(1), // Input
+ null, // Input 2
+ material.getFluid(144), // Fluid Output
+ 0, // Chance
+ 1 * 20, // Duration
+ 16 // Eu Tick
+ )) {
+ Logger.WARNING("144l fluid extractor from 1 ingot Recipe: " + material.getLocalizedName()
+ + " - Success");
+ } else {
+ Logger.WARNING("144l fluid extractor from 1 ingot Recipe: " + material.getLocalizedName()
+ + " - Failed");
+ }
- //Plate
- if (GT_Values.RA.addFluidExtractionRecipe(material.getPlate(1), //Input
- null, //Input 2
- material.getFluid(144), //Fluid Output
- 0, //Chance
- 1*20, //Duration
- 16 //Eu Tick
- )){
- Logger.WARNING("144l fluid extractor from 1 plate Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING("144l fluid extractor from 1 plate Recipe: "+material.getLocalizedName()+" - Failed");
- }
+ // Plate
+ if (material.getPlate(1) != null)
+ if (GT_Values.RA.addFluidExtractionRecipe(material.getPlate(1), // Input
+ null, // Input 2
+ material.getFluid(144), // Fluid Output
+ 0, // Chance
+ 1 * 20, // Duration
+ 16 // Eu Tick
+ )) {
+ Logger.WARNING("144l fluid extractor from 1 plate Recipe: " + material.getLocalizedName()
+ + " - Success");
+ } else {
+ Logger.WARNING("144l fluid extractor from 1 plate Recipe: " + material.getLocalizedName()
+ + " - Failed");
+ }
- //Double Plate
- if (GT_Values.RA.addFluidExtractionRecipe(material.getPlateDouble(1), //Input
- null, //Input 2
- material.getFluid(288), //Fluid Output
- 0, //Chance
- 1*20, //Duration
- 16 //Eu Tick
- )){
- Logger.WARNING("144l fluid extractor from 1 double plate Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING("144l fluid extractor from 1 double plate Recipe: "+material.getLocalizedName()+" - Failed");
- }
+ // Double Plate
+ if (material.getPlateDouble(1) != null)
+ if (GT_Values.RA.addFluidExtractionRecipe(material.getPlateDouble(1), // Input
+ null, // Input 2
+ material.getFluid(288), // Fluid Output
+ 0, // Chance
+ 1 * 20, // Duration
+ 16 // Eu Tick
+ )) {
+ Logger.WARNING("144l fluid extractor from 1 double plate Recipe: " + material.getLocalizedName()
+ + " - Success");
+ } else {
+ Logger.WARNING("144l fluid extractor from 1 double plate Recipe: " + material.getLocalizedName()
+ + " - Failed");
+ }
- //Nugget
- if (GT_Values.RA.addFluidExtractionRecipe(material.getNugget(1), //Input
- null, //Input 2
- material.getFluid(16), //Fluid Output
- 0, //Chance
- 16, //Duration
- 8 //Eu Tick
- )){
- Logger.WARNING("16l fluid extractor from 1 nugget Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING("16l fluid extractor from 1 nugget Recipe: "+material.getLocalizedName()+" - Failed");
- }
+ // Nugget
+ if (material.getNugget(1) != null)
+ if (GT_Values.RA.addFluidExtractionRecipe(material.getNugget(1), // Input
+ null, // Input 2
+ material.getFluid(16), // Fluid Output
+ 0, // Chance
+ 16, // Duration
+ 8 // Eu Tick
+ )) {
+ Logger.WARNING("16l fluid extractor from 1 nugget Recipe: " + material.getLocalizedName()
+ + " - Success");
+ } else {
+ Logger.WARNING("16l fluid extractor from 1 nugget Recipe: " + material.getLocalizedName()
+ + " - Failed");
+ }
- //Block
- if (GT_Values.RA.addFluidExtractionRecipe(material.getBlock(1), //Input
- null, //Input 2
- material.getFluid(144*9), //Fluid Output
- 0, //Chance
- 288, //Duration
- 16 //Eu Tick
- )){
- Logger.WARNING((144*9)+"l fluid extractor from 1 block Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING((144*9)+"l fluid extractor from 1 block Recipe: "+material.getLocalizedName()+" - Failed");
- }
+ // Block
+ if (material.getBlock(1) != null)
+ if (GT_Values.RA.addFluidExtractionRecipe(material.getBlock(1), // Input
+ null, // Input 2
+ material.getFluid(144 * 9), // Fluid Output
+ 0, // Chance
+ 288, // Duration
+ 16 // Eu Tick
+ )) {
+ Logger.WARNING((144 * 9) + "l fluid extractor from 1 block Recipe: "
+ + material.getLocalizedName() + " - Success");
+ } else {
+ Logger.WARNING((144 * 9) + "l fluid extractor from 1 block Recipe: "
+ + material.getLocalizedName() + " - Failed");
+ }
}
+ // Making Shapes from fluid
+ // Ingot
+ if (material.getIngot(1) != null)
+ if (GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Ingot.get(0), // Item Shape
+ material.getFluid(144), // Fluid Input
+ material.getIngot(1), // output
+ 32, // Duration
+ 8 // Eu Tick
+ )) {
+ Logger.WARNING(
+ "144l fluid molder for 1 ingot Recipe: " + material.getLocalizedName() + " - Success");
+ } else {
+ Logger.WARNING(
+ "144l fluid molder for 1 ingot Recipe: " + material.getLocalizedName() + " - Failed");
+ }
+ // Plate
+ if (material.getPlate(1) != null)
+ if (GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Plate.get(0), // Item Shape
+ material.getFluid(144), // Fluid Input
+ material.getPlate(1), // output
+ 32, // Duration
+ 8 // Eu Tick
+ )) {
+ Logger.WARNING(
+ "144l fluid molder for 1 plate Recipe: " + material.getLocalizedName() + " - Success");
+ } else {
+ Logger.WARNING(
+ "144l fluid molder for 1 plate Recipe: " + material.getLocalizedName() + " - Failed");
+ }
+ // Nugget
+ if (material.getNugget(1) != null)
+ if (GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Nugget.get(0), // Item Shape
+ material.getFluid(16), // Fluid Input
+ material.getNugget(1), // output
+ 16, // Duration
+ 4 // Eu Tick
+ )) {
+ Logger.WARNING(
+ "16l fluid molder for 1 nugget Recipe: " + material.getLocalizedName() + " - Success");
+ } else {
+ Logger.WARNING(
+ "16l fluid molder for 1 nugget Recipe: " + material.getLocalizedName() + " - Failed");
+ }
- //Making Shapes from fluid
-
- //Ingot
- if (GT_Values.RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Ingot.get(0), //Item Shape
- material.getFluid(144), //Fluid Input
- material.getIngot(1), //output
- 32, //Duration
- 8 //Eu Tick
- )){
- Logger.WARNING("144l fluid molder for 1 ingot Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING("144l fluid molder for 1 ingot Recipe: "+material.getLocalizedName()+" - Failed");
- }
+ // Gears
+ if (material.getGear(1) != null)
+ if (GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Gear.get(0), // Item Shape
+ material.getFluid(576), // Fluid Input
+ material.getGear(1), // output
+ 128, // Duration
+ 8 // Eu Tick
+ )) {
+ Logger.WARNING(
+ "576l fluid molder for 1 gear Recipe: " + material.getLocalizedName() + " - Success");
+ } else {
+ Logger.WARNING("576l fluid molder for 1 gear Recipe: " + material.getLocalizedName() + " - Failed");
+ }
- //Plate
- if (GT_Values.RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Plate.get(0), //Item Shape
- material.getFluid(144), //Fluid Input
- material.getPlate(1), //output
- 32, //Duration
- 8 //Eu Tick
- )){
- Logger.WARNING("144l fluid molder for 1 plate Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING("144l fluid molder for 1 plate Recipe: "+material.getLocalizedName()+" - Failed");
- }
+ // Blocks
+ if (material.getBlock(1) != null)
+ if (GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Block.get(0), // Item Shape
+ material.getFluid(144 * 9), // Fluid Input
+ material.getBlock(1), // output
+ 288, // Duration
+ 16 // Eu Tick
+ )) {
+ Logger.WARNING((144 * 9) + "l fluid molder from 1 block Recipe: " + material.getLocalizedName()
+ + " - Success");
+ } else {
+ Logger.WARNING((144 * 9) + "l fluid molder from 1 block Recipe: " + material.getLocalizedName()
+ + " - Failed");
+ }
- //Nugget
- if (GT_Values.RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Nugget.get(0), //Item Shape
- material.getFluid(16), //Fluid Input
- material.getNugget(1), //output
- 16, //Duration
- 4 //Eu Tick
- )){
- Logger.WARNING("16l fluid molder for 1 nugget Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING("16l fluid molder for 1 nugget Recipe: "+material.getLocalizedName()+" - Failed");
- }
+ if (CORE.GTNH) {
- //Gears
- if (GT_Values.RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Gear.get(0), //Item Shape
- material.getFluid(576), //Fluid Input
- material.getGear(1), //output
- 128, //Duration
- 8 //Eu Tick
- )){
- Logger.WARNING("576l fluid molder for 1 gear Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING("576l fluid molder for 1 gear Recipe: "+material.getLocalizedName()+" - Failed");
- }
+ // GTNH
- //Blocks
- if (GT_Values.RA.addFluidSolidifierRecipe(
- ItemList.Shape_Mold_Block.get(0), //Item Shape
- material.getFluid(144*9), //Fluid Input
- material.getBlock(1), //output
- 288, //Duration
- 16 //Eu Tick
- )){
- Logger.WARNING((144*9)+"l fluid molder from 1 block Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING((144*9)+"l fluid molder from 1 block Recipe: "+material.getLocalizedName()+" - Failed");
- }
-
-
-
-
- if (CORE.GTNH){
-
- //GTNH
-
- //Shape_Mold_Rod
- //Shape_Mold_Rod_Long
- //Shape_Mold_Bolt,
- //Shape_Mold_Screw,
- //Shape_Mold_Ring,
+ // Shape_Mold_Rod
+ // Shape_Mold_Rod_Long
+ // Shape_Mold_Bolt,
+ // Shape_Mold_Screw,
+ // Shape_Mold_Ring,
ItemList mold_Rod = ItemList.valueOf("Shape_Mold_Rod");
ItemList mold_Rod_Long = ItemList.valueOf("Shape_Mold_Rod_Long");
ItemList mold_Bolt = ItemList.valueOf("Shape_Mold_Bolt");
ItemList mold_Screw = ItemList.valueOf("Shape_Mold_Screw");
ItemList mold_Ring = ItemList.valueOf("Shape_Mold_Ring");
-
- //Rod
- if (mold_Rod != null && GT_Values.RA.addFluidSolidifierRecipe(
- mold_Rod.get(0), //Item Shape
- material.getFluid(72), //Fluid Input
- material.getRod(1), //output
- 150, //Duration
- 24 //Eu Tick
- )){
- Logger.WARNING((144*9)+"l fluid molder from 1 rod Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING((144*9)+"l fluid molder from 1 rod Recipe: "+material.getLocalizedName()+" - Failed");
- }
-
- //Rod Long
- if (mold_Rod_Long != null && GT_Values.RA.addFluidSolidifierRecipe(
- mold_Rod_Long.get(0), //Item Shape
- material.getFluid(144), //Fluid Input
- material.getLongRod(1), //output
- 300, //Duration
- 24 //Eu Tick
- )){
- Logger.WARNING((144*9)+"l fluid molder from 1 rod long Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING((144*9)+"l fluid molder from 1 rod long Recipe: "+material.getLocalizedName()+" - Failed");
- }
-
- //Bolt
- if (mold_Bolt != null && GT_Values.RA.addFluidSolidifierRecipe(
- mold_Bolt.get(0), //Item Shape
- material.getFluid(18), //Fluid Input
- material.getBolt(1), //output
- 50, //Duration
- 6 //Eu Tick
- )){
- Logger.WARNING((144*9)+"l fluid molder from 1 bolt Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING((144*9)+"l fluid molder from 1 bolt Recipe: "+material.getLocalizedName()+" - Failed");
- }
-
- //Screw
- if (mold_Screw != null && GT_Values.RA.addFluidSolidifierRecipe(
- mold_Screw.get(0), //Item Shape
- material.getFluid(18), //Fluid Input
- material.getScrew(1), //output
- 50, //Duration
- 6 //Eu Tick
- )){
- Logger.WARNING((144*9)+"l fluid molder from 1 screw Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING((144*9)+"l fluid molder from 1 screw Recipe: "+material.getLocalizedName()+" - Failed");
- }
-
- //Ring
- if (mold_Ring != null && GT_Values.RA.addFluidSolidifierRecipe(
- mold_Ring.get(0), //Item Shape
- material.getFluid(36), //Fluid Input
- material.getRing(1), //output
- 100, //Duration
- 12 //Eu Tick
- )){
- Logger.WARNING((144*9)+"l fluid molder from 1 ring Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING((144*9)+"l fluid molder from 1 ring Recipe: "+material.getLocalizedName()+" - Failed");
- }
-
-
-
-
-
-
-
-
+
+ // Rod
+ if (material.getRod(1) != null)
+ if (mold_Rod != null && GT_Values.RA.addFluidSolidifierRecipe(mold_Rod.get(0), // Item Shape
+ material.getFluid(72), // Fluid Input
+ material.getRod(1), // output
+ 150, // Duration
+ 24 // Eu Tick
+ )) {
+ Logger.WARNING((144 * 9) + "l fluid molder from 1 rod Recipe: " + material.getLocalizedName()
+ + " - Success");
+ } else {
+ Logger.WARNING((144 * 9) + "l fluid molder from 1 rod Recipe: " + material.getLocalizedName()
+ + " - Failed");
+ }
+
+ // Rod Long
+ if (material.getLongRod(1) != null)
+ if (mold_Rod_Long != null && GT_Values.RA.addFluidSolidifierRecipe(mold_Rod_Long.get(0), // Item
+ // Shape
+ material.getFluid(144), // Fluid Input
+ material.getLongRod(1), // output
+ 300, // Duration
+ 24 // Eu Tick
+ )) {
+ Logger.WARNING((144 * 9) + "l fluid molder from 1 rod long Recipe: "
+ + material.getLocalizedName() + " - Success");
+ } else {
+ Logger.WARNING((144 * 9) + "l fluid molder from 1 rod long Recipe: "
+ + material.getLocalizedName() + " - Failed");
+ }
+
+ // Bolt
+ if (material.getBolt(1) != null)
+ if (mold_Bolt != null && GT_Values.RA.addFluidSolidifierRecipe(mold_Bolt.get(0), // Item Shape
+ material.getFluid(18), // Fluid Input
+ material.getBolt(1), // output
+ 50, // Duration
+ 6 // Eu Tick
+ )) {
+ Logger.WARNING((144 * 9) + "l fluid molder from 1 bolt Recipe: " + material.getLocalizedName()
+ + " - Success");
+ } else {
+ Logger.WARNING((144 * 9) + "l fluid molder from 1 bolt Recipe: " + material.getLocalizedName()
+ + " - Failed");
+ }
+
+ // Screw
+ if (material.getScrew(1) != null)
+ if (mold_Screw != null && GT_Values.RA.addFluidSolidifierRecipe(mold_Screw.get(0), // Item Shape
+ material.getFluid(18), // Fluid Input
+ material.getScrew(1), // output
+ 50, // Duration
+ 6 // Eu Tick
+ )) {
+ Logger.WARNING((144 * 9) + "l fluid molder from 1 screw Recipe: " + material.getLocalizedName()
+ + " - Success");
+ } else {
+ Logger.WARNING((144 * 9) + "l fluid molder from 1 screw Recipe: " + material.getLocalizedName()
+ + " - Failed");
+ }
+
+ // Ring
+ if (material.getRing(1) != null)
+ if (mold_Ring != null && GT_Values.RA.addFluidSolidifierRecipe(mold_Ring.get(0), // Item Shape
+ material.getFluid(36), // Fluid Input
+ material.getRing(1), // output
+ 100, // Duration
+ 12 // Eu Tick
+ )) {
+ Logger.WARNING((144 * 9) + "l fluid molder from 1 ring Recipe: " + material.getLocalizedName()
+ + " - Success");
+ } else {
+ Logger.WARNING((144 * 9) + "l fluid molder from 1 ring Recipe: " + material.getLocalizedName()
+ + " - Failed");
+ }
+
}
}
}
}
-
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Ore.java b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Ore.java
index 99984d98bf..9529b9019a 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Ore.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_Ore.java
@@ -2,6 +2,8 @@ package gtPlusPlus.xmod.gregtech.loaders;
import net.minecraft.item.ItemStack;
+import java.util.ArrayList;
+
import gregtech.api.GregTech_API;
import gregtech.api.enums.GT_Values;
import gregtech.api.enums.Materials;
@@ -33,7 +35,7 @@ public class RecipeGen_Ore implements Runnable{
public void run() {
generateRecipes(this.toGenerate);
}
-
+
private static Material mStone;
public static void generateRecipes(final Material material){
@@ -41,26 +43,51 @@ public class RecipeGen_Ore implements Runnable{
if (mStone == null) {
mStone = MaterialUtils.generateMaterialFromGtENUM(Materials.Stone);
}
-
+
//if (material.getMaterialComposites().length > 1){
- Logger.MATERIALS("[Recipe Generator Debug] ["+material.getLocalizedName()+"]");
- int tVoltageMultiplier = MaterialUtils.getVoltageForTier(material.vTier);
- if (tVoltageMultiplier < 120) {
- tVoltageMultiplier = material.getMeltingPointK() >= 2800 ? 480 : 120;
- }
-
- final ItemStack dustStone = ItemUtils.getItemStackOfAmountFromOreDict("dustStone", 1);
- Material bonusA = null; //Ni
- Material bonusB = null; //Tin
+ Logger.MATERIALS("[Recipe Generator Debug] ["+material.getLocalizedName()+"]");
+ int tVoltageMultiplier = MaterialUtils.getVoltageForTier(material.vTier);
+ if (tVoltageMultiplier < 120) {
+ tVoltageMultiplier = material.getMeltingPointK() >= 2800 ? 480 : 120;
+ }
- if (material.getComposites().size() >= 1 && material.getComposites().get(0) != null){
- bonusA = material.getComposites().get(0).getStackMaterial();
- }
- else {
- bonusA = material;
+ final ItemStack dustStone = ItemUtils.getItemStackOfAmountFromOreDict("dustStone", 1);
+ Material bonusA = null; //Ni
+ Material bonusB = null; //Tin
+
+ if (material.getComposites().size() >= 1 && material.getComposites().get(0) != null){
+ bonusA = material.getComposites().get(0).getStackMaterial();
+ }
+ else {
+ bonusA = material;
+ }
+
+ boolean allFailed = false;
+
+
+ //Setup Bonuses
+ ArrayList<Material> aMatComp = new ArrayList<Material>();
+ for (Material j : MaterialUtils.getCompoundMaterialsRecursively(material)) {
+ aMatComp.add(j);
+ }
+
+ if (aMatComp.size() < 3) {
+ while (aMatComp.size() < 3) {
+ aMatComp.add(material);
}
+ }
- boolean allFailed = false;
+ AutoMap<Material> amJ = new AutoMap<Material>();
+ int aIndexCounter = 0;
+ for (Material g : aMatComp) {
+ if (g.hasSolidForm()) {
+ if (getDust(g) != null && getTinyDust(g) != null) {
+ amJ.put(g);
+ }
+ }
+ }
+
+ if (amJ.size() < 2) {
if (material.getComposites().size() >= 2 && material.getComposites().get(1) != null){
bonusB = material.getComposites().get(1).getStackMaterial();
//If Secondary Output has no solid output, try the third (If it exists)
@@ -84,64 +111,91 @@ public class RecipeGen_Ore implements Runnable{
else {
allFailed = true;
}
+ }
+ else {
+ bonusA = amJ.get(0);
+ bonusB = amJ.get(1);
+ }
- //Default out if it's made of fluids or some shit.
- if (allFailed || bonusB == null) {
- bonusB = tVoltageMultiplier <= 100 ? material : mStone;
- }
+ //Default out if it's made of fluids or some shit.
+ if (bonusA == null) {
+ bonusA = tVoltageMultiplier <= 100 ? material : mStone;
+ }
+ //Default out if it's made of fluids or some shit.
+ if (allFailed || bonusB == null) {
+ bonusB = tVoltageMultiplier <= 100 ? material : mStone;
+ }
- AutoMap<Pair<Integer, Material>> componentMap = new AutoMap<Pair<Integer, Material>>();
- for (MaterialStack r : material.getComposites()){
- if (r != null){
- componentMap.put(new Pair<Integer, Material>(r.getPartsPerOneHundred(), r.getStackMaterial()));
- }
+ AutoMap<Pair<Integer, Material>> componentMap = new AutoMap<Pair<Integer, Material>>();
+ for (MaterialStack r : material.getComposites()){
+ if (r != null){
+ componentMap.put(new Pair<Integer, Material>(r.getPartsPerOneHundred(), r.getStackMaterial()));
}
+ }
- //Need two valid outputs
- if (bonusA == null || bonusB == null || !bonusA.hasSolidForm() || !bonusB.hasSolidForm()) {
- return;
- }
- /**
- * Macerate
- */
- //Macerate ore to Crushed
- if (GT_Values.RA.addPulveriserRecipe(material.getOre(1), new ItemStack[]{material.getCrushed(2)}, new int[]{10000}, 20*20, tVoltageMultiplier/2)){
- Logger.MATERIALS("[Macerator] Added Recipe: 'Macerate ore to Crushed ore'");
+ //Need two valid outputs
+ if (bonusA == null || bonusB == null || !bonusA.hasSolidForm() || !bonusB.hasSolidForm()) {
+ if (bonusA == null) {
+ bonusA = mStone;
}
- //Macerate Crushed to Impure Dust
- if (GT_Values.RA.addPulveriserRecipe(material.getCrushed(1), new ItemStack[]{material.getDustImpure(1), bonusA.getDust(1)}, new int[]{10000, 1000}, 20*20, tVoltageMultiplier/2)){
- Logger.MATERIALS("[Macerator] Added Recipe: 'Macerate Crushed ore to Impure Dust'");
+ if (bonusB == null) {
+ bonusB = mStone;
}
- //Macerate Washed to Purified Dust
- if (GT_Values.RA.addPulveriserRecipe(material.getCrushedPurified(1), new ItemStack[]{material.getDustPurified(1), bonusA.getDust(1)}, new int[]{10000, 1000}, 20*20, tVoltageMultiplier/2)){
- Logger.MATERIALS("[Macerator] Added Recipe: 'Macerate Washed ore to Purified Dust'");
- }
- //Macerate Centrifuged to Pure Dust
- if (GT_Values.RA.addPulveriserRecipe(material.getCrushedCentrifuged(1), new ItemStack[]{material.getDust(1), bonusA.getDust(1)}, new int[]{10000, 1000}, 20*20, tVoltageMultiplier/2)){
- Logger.MATERIALS("[Macerator] Added Recipe: 'Macerate Centrifuged ore to Pure Dust'");
+ if (!bonusA.hasSolidForm()) {
+ bonusA = mStone;
}
+ if (!bonusB.hasSolidForm()) {
+ bonusB = mStone;
+ }
+ }
- /**
- * Wash
- */
- //Wash into Purified Crushed
- /*if (GT_Values.RA.addOreWasherRecipe(material.getCrushed(1), material.getCrushedPurified(1), bonusA.getTinyDust(1), dustStone, FluidUtils.getWater(1000), 25*20, 16)){
+ ItemStack tinyDustA = getTinyDust(bonusA);
+ ItemStack tinyDustB = getTinyDust(bonusB);
+ ItemStack matDust = getDust(material);
+ ItemStack matDustA = getDust(bonusA);
+ ItemStack matDustB = getDust(bonusB);
+
+ /**
+ * Macerate
+ */
+ //Macerate ore to Crushed
+ if (GT_Values.RA.addPulveriserRecipe(material.getOre(1), new ItemStack[]{material.getCrushed(2)}, new int[]{10000}, 20*20, tVoltageMultiplier/2)){
+ Logger.MATERIALS("[Macerator] Added Recipe: 'Macerate ore to Crushed ore'");
+ }
+ //Macerate Crushed to Impure Dust
+ if (GT_Values.RA.addPulveriserRecipe(material.getCrushed(1), new ItemStack[]{material.getDustImpure(1), matDustA}, new int[]{10000, 1000}, 20*20, tVoltageMultiplier/2)){
+ Logger.MATERIALS("[Macerator] Added Recipe: 'Macerate Crushed ore to Impure Dust'");
+ }
+ //Macerate Washed to Purified Dust
+ if (GT_Values.RA.addPulveriserRecipe(material.getCrushedPurified(1), new ItemStack[]{material.getDustPurified(1), matDustA}, new int[]{10000, 1000}, 20*20, tVoltageMultiplier/2)){
+ Logger.MATERIALS("[Macerator] Added Recipe: 'Macerate Washed ore to Purified Dust'");
+ }
+ //Macerate Centrifuged to Pure Dust
+ if (GT_Values.RA.addPulveriserRecipe(material.getCrushedCentrifuged(1), new ItemStack[]{matDust, matDustA}, new int[]{10000, 1000}, 20*20, tVoltageMultiplier/2)){
+ Logger.MATERIALS("[Macerator] Added Recipe: 'Macerate Centrifuged ore to Pure Dust'");
+ }
+
+ /**
+ * Wash
+ */
+ //Wash into Purified Crushed
+ /*if (GT_Values.RA.addOreWasherRecipe(material.getCrushed(1), material.getCrushedPurified(1), bonusA.getTinyDust(1), dustStone, FluidUtils.getWater(1000), 25*20, 16)){
Logger.MATERIALS("[OreWasher] Added Recipe: 'Wash Crushed ore into Purified Crushed ore'");
}*/
- //.08 compat method
- if (GT_ModHandler.addOreWasherRecipe(material.getCrushed(1), 1000, material.getCrushedPurified(1), bonusA.getTinyDust(1), dustStone)){
- Logger.MATERIALS("[OreWasher] Added Recipe: 'Wash Crushed ore into Purified Crushed ore'");
- }
+ //.08 compat method
+ if (GT_ModHandler.addOreWasherRecipe(material.getCrushed(1), 1000, material.getCrushedPurified(1), tinyDustA, dustStone)){
+ Logger.MATERIALS("[OreWasher] Added Recipe: 'Wash Crushed ore into Purified Crushed ore'");
+ }
- /**
- * Thermal Centrifuge
- */
- /*//Crushed ore to Centrifuged Ore
- if (GT_Values.RA.addThermalCentrifugeRecipe(material.getCrushed(1), material.getCrushedCentrifuged(1), bonusB.getTinyDust(1), dustStone, 25*20, 24)){
+ /**
+ * Thermal Centrifuge
+ */
+ /*//Crushed ore to Centrifuged Ore
+ if (GT_Values.RA.addThermalCentrifugeRecipe(material.getCrushed(1), material.getCrushedCentrifuged(1), tinyDustB, dustStone, 25*20, 24)){
Logger.MATERIALS("[ThermalCentrifuge] Added Recipe: 'Crushed ore to Centrifuged Ore'");
}
//Washed ore to Centrifuged Ore
@@ -149,319 +203,319 @@ public class RecipeGen_Ore implements Runnable{
Logger.MATERIALS("[ThermalCentrifuge] Added Recipe: 'Washed ore to Centrifuged Ore'");
}*/
- Logger.MATERIALS("material.getCrushed(1): "+(material.getCrushed(1) != null));
- Logger.MATERIALS("material.getCrushedPurified(1): "+(material.getCrushedPurified(1) != null));
- Logger.MATERIALS("bonusA.getTinyDust(1): "+(bonusA.getTinyDust(1) != null)+" | Material: "+(bonusA != null) + " | Material name: "+(bonusA != null ? bonusA.getLocalizedName() : "invalid material"));
- Logger.MATERIALS("bonusB.getTinyDust(1): "+(bonusB.getTinyDust(1) != null)+" | Material: "+(bonusB != null) + " | Material name: "+(bonusB != null ? bonusB.getLocalizedName() : "invalid material"));
+ Logger.MATERIALS("material.getCrushed(1): "+(material.getCrushed(1) != null));
+ Logger.MATERIALS("material.getCrushedPurified(1): "+(material.getCrushedPurified(1) != null));
+ Logger.MATERIALS("bonusA.getTinyDust(1): "+(tinyDustA != null)+" | Material: "+(bonusA != null) + " | Material name: "+(bonusA != null ? bonusA.getLocalizedName() : "invalid material"));
+ Logger.MATERIALS("bonusB.getTinyDust(1): "+(tinyDustB != null)+" | Material: "+(bonusB != null) + " | Material name: "+(bonusB != null ? bonusB.getLocalizedName() : "invalid material"));
- try {
+ try {
//.08 compat
- if (GT_ModHandler.addThermalCentrifugeRecipe(material.getCrushed(1), 200, material.getCrushedCentrifuged(1), bonusB.getTinyDust(1), dustStone)){
- Logger.MATERIALS("[ThermalCentrifuge] Added Recipe: 'Crushed ore to Centrifuged Ore' | Input: "+material.getCrushed(1).getDisplayName()+" | Outputs: "+material.getCrushedCentrifuged(1).getDisplayName()+", "+bonusB.getTinyDust(1).getDisplayName()+", "+dustStone.getDisplayName()+".");
- }
- }
- catch (Throwable t) {}
- try {
- if (GT_ModHandler.addThermalCentrifugeRecipe(material.getCrushedPurified(1), 200, material.getCrushedCentrifuged(1), bonusA.getTinyDust(1), dustStone)){
- Logger.MATERIALS("[ThermalCentrifuge] Added Recipe: 'Washed ore to Centrifuged Ore' | Input: "+material.getCrushedPurified(1).getDisplayName()+" | Outputs: "+material.getCrushedCentrifuged(1).getDisplayName()+", "+bonusA.getTinyDust(1).getDisplayName()+", "+dustStone.getDisplayName()+".");
+ if (GT_ModHandler.addThermalCentrifugeRecipe(material.getCrushed(1), 200, material.getCrushedCentrifuged(1), tinyDustB, dustStone)){
+ Logger.MATERIALS("[ThermalCentrifuge] Added Recipe: 'Crushed ore to Centrifuged Ore' | Input: "+material.getCrushed(1).getDisplayName()+" | Outputs: "+material.getCrushedCentrifuged(1).getDisplayName()+", "+tinyDustB.getDisplayName()+", "+dustStone.getDisplayName()+".");
}
+ }
+ catch (Throwable t) {}
+ try {
+ if (GT_ModHandler.addThermalCentrifugeRecipe(material.getCrushedPurified(1), 200, material.getCrushedCentrifuged(1), tinyDustA, dustStone)){
+ Logger.MATERIALS("[ThermalCentrifuge] Added Recipe: 'Washed ore to Centrifuged Ore' | Input: "+material.getCrushedPurified(1).getDisplayName()+" | Outputs: "+material.getCrushedCentrifuged(1).getDisplayName()+", "+tinyDustA.getDisplayName()+", "+dustStone.getDisplayName()+".");
}
- catch (Throwable t) {}
-
+ }
+ catch (Throwable t) {}
- /**
- * Forge Hammer
- */
- if (GT_Values.RA.addForgeHammerRecipe(material.getCrushedCentrifuged(1), material.getDust(1), 10, tVoltageMultiplier/4)){
- Logger.MATERIALS("[ForgeHammer] Added Recipe: 'Crushed Centrifuged to Pure Dust'");
- }
- if (GT_Values.RA.addForgeHammerRecipe(material.getCrushedPurified(1), material.getDustPurified(1), 10, tVoltageMultiplier/4)){
- Logger.MATERIALS("[ForgeHammer] Added Recipe: 'Crushed Purified to Purified Dust'");
- }
- if (GT_Values.RA.addForgeHammerRecipe(material.getOre(1), material.getCrushed(1), 10, tVoltageMultiplier/4)){
- Logger.MATERIALS("[ForgeHammer] Added Recipe: 'Ore to Crushed'");
- }
- /**
- * Centrifuge
- */
- //Purified Dust to Clean
- if (GT_Values.RA.addCentrifugeRecipe(
- material.getDustPurified(1), null,
- null, //In Fluid
- null, //Out Fluid
- material.getDust(1), bonusA.getTinyDust(1),null,
- null, null,null,
- new int[]{10000, 10000}, //Chances
- 5*20, //Eu
- tVoltageMultiplier/2)){ //Time
- Logger.MATERIALS("[Centrifuge] Added Recipe: Purified Dust to Clean Dust");
- }
+ /**
+ * Forge Hammer
+ */
+ if (GT_Values.RA.addForgeHammerRecipe(material.getCrushedCentrifuged(1), matDust, 10, tVoltageMultiplier/4)){
+ Logger.MATERIALS("[ForgeHammer] Added Recipe: 'Crushed Centrifuged to Pure Dust'");
+ }
+ if (GT_Values.RA.addForgeHammerRecipe(material.getCrushedPurified(1), material.getDustPurified(1), 10, tVoltageMultiplier/4)){
+ Logger.MATERIALS("[ForgeHammer] Added Recipe: 'Crushed Purified to Purified Dust'");
+ }
+ if (GT_Values.RA.addForgeHammerRecipe(material.getOre(1), material.getCrushed(1), 10, tVoltageMultiplier/4)){
+ Logger.MATERIALS("[ForgeHammer] Added Recipe: 'Ore to Crushed'");
+ }
- //Impure Dust to Clean
- if (GT_Values.RA.addCentrifugeRecipe(
- material.getDustImpure(1), null,
- null, //In Fluid
- null, //Out Fluid
- material.getDust(1), bonusB.getTinyDust(1),null,
- null, null,null,
- new int[]{10000, 10000}, //Chances
- 5*20, //Eu
- tVoltageMultiplier/2)){ //Time
- Logger.MATERIALS("[Centrifuge] Added Recipe: Inpure Dust to Clean Dust");
- }
+ /**
+ * Centrifuge
+ */
+ //Purified Dust to Clean
+ if (GT_Values.RA.addCentrifugeRecipe(
+ material.getDustPurified(1), null,
+ null, //In Fluid
+ null, //Out Fluid
+ matDust, tinyDustA,null,
+ null, null,null,
+ new int[]{10000, 10000}, //Chances
+ 5*20, //Eu
+ tVoltageMultiplier/2)){ //Time
+ Logger.MATERIALS("[Centrifuge] Added Recipe: Purified Dust to Clean Dust");
+ }
+ //Impure Dust to Clean
+ if (GT_Values.RA.addCentrifugeRecipe(
+ material.getDustImpure(1), null,
+ null, //In Fluid
+ null, //Out Fluid
+ matDust, tinyDustB,null,
+ null, null,null,
+ new int[]{10000, 10000}, //Chances
+ 5*20, //Eu
+ tVoltageMultiplier/2)){ //Time
+ Logger.MATERIALS("[Centrifuge] Added Recipe: Inpure Dust to Clean Dust");
+ }
- /**
- * Electrolyzer
- */
- //Process Dust
- if (componentMap.size() > 0 && componentMap.size() <= 6){
+ /**
+ * Electrolyzer
+ */
- ItemStack mInternalOutputs[] = new ItemStack[6];
- int mChances[] = new int[6];
- int mCellCount = 0;
+ //Process Dust
+ if (componentMap.size() > 0 && componentMap.size() <= 6){
- int mTotalCount = 0;
+ ItemStack mInternalOutputs[] = new ItemStack[6];
+ int mChances[] = new int[6];
+ int mCellCount = 0;
- int mCounter = 0;
- for (Pair<Integer, Material> f : componentMap){
- if (f.getValue().getState() != MaterialState.SOLID){
- Logger.MATERIALS("[Electrolyzer] Found Fluid Component, adding "+f.getKey()+" cells of "+f.getValue().getLocalizedName()+".");
- mInternalOutputs[mCounter++] = f.getValue().getCell(f.getKey());
- mCellCount += f.getKey();
- mTotalCount += f.getKey();
- Logger.MATERIALS("[Electrolyzer] In total, adding "+mCellCount+" cells for "+material.getLocalizedName()+" processing.");
- }
- else {
- Logger.MATERIALS("[Electrolyzer] Found Solid Component, adding "+f.getKey()+" dusts of "+f.getValue().getLocalizedName()+".");
- mInternalOutputs[mCounter++] = f.getValue().getDust(f.getKey());
- mTotalCount += f.getKey();
- }
- }
+ int mTotalCount = 0;
- //Build Output Array
- for (int g=0;g<mInternalOutputs.length;g++){
- Logger.MATERIALS("[Electrolyzer] Is output["+g+"] valid with a chance? "+(mInternalOutputs[g] != null ? 10000 : 0));
- mChances[g] = (mInternalOutputs[g] != null ? 10000 : 0);
+ int mCounter = 0;
+ for (Pair<Integer, Material> f : componentMap){
+ if (f.getValue().getState() != MaterialState.SOLID){
+ Logger.MATERIALS("[Electrolyzer] Found Fluid Component, adding "+f.getKey()+" cells of "+f.getValue().getLocalizedName()+".");
+ mInternalOutputs[mCounter++] = f.getValue().getCell(f.getKey());
+ mCellCount += f.getKey();
+ mTotalCount += f.getKey();
+ Logger.MATERIALS("[Electrolyzer] In total, adding "+mCellCount+" cells for "+material.getLocalizedName()+" processing.");
}
-
- ItemStack emptyCell = null;
- if (mCellCount > 0){
- emptyCell = ItemUtils.getItemStackOfAmountFromOreDict("cellEmpty", mCellCount);
- Logger.MATERIALS("[Electrolyzer] Recipe now requires "+mCellCount+" empty cells as input.");
+ else {
+ Logger.MATERIALS("[Electrolyzer] Found Solid Component, adding "+f.getKey()+" dusts of "+f.getValue().getLocalizedName()+".");
+ mInternalOutputs[mCounter++] = f.getValue().getDust(f.getKey());
+ mTotalCount += f.getKey();
}
+ }
- ItemStack mainDust = material.getDust(material.smallestStackSizeWhenProcessing);
+ //Build Output Array
+ for (int g=0;g<mInternalOutputs.length;g++){
+ Logger.MATERIALS("[Electrolyzer] Is output["+g+"] valid with a chance? "+(mInternalOutputs[g] != null ? 10000 : 0));
+ mChances[g] = (mInternalOutputs[g] != null ? 10000 : 0);
+ }
+
+ ItemStack emptyCell = null;
+ if (mCellCount > 0){
+ emptyCell = ItemUtils.getItemStackOfAmountFromOreDict("cellEmpty", mCellCount);
+ Logger.MATERIALS("[Electrolyzer] Recipe now requires "+mCellCount+" empty cells as input.");
+ }
+
+ ItemStack mainDust = material.getDust(material.smallestStackSizeWhenProcessing);
+ if (mainDust != null){
+ Logger.MATERIALS("[Electrolyzer] Recipe now requires "+material.smallestStackSizeWhenProcessing+"x "+mainDust.getDisplayName()+" as input.");
+ }
+ else {
+ mainDust = material.getDust(mTotalCount);
+ Logger.MATERIALS("[Electrolyzer] Could not find valid input dust, trying alternative.");
if (mainDust != null){
- Logger.MATERIALS("[Electrolyzer] Recipe now requires "+material.smallestStackSizeWhenProcessing+"x "+mainDust.getDisplayName()+" as input.");
+ Logger.MATERIALS("[Electrolyzer] Recipe now requires "+mTotalCount+"x "+mainDust.getDisplayName()+" as input.");
}
else {
- mainDust = material.getDust(mTotalCount);
- Logger.MATERIALS("[Electrolyzer] Could not find valid input dust, trying alternative.");
- if (mainDust != null){
- Logger.MATERIALS("[Electrolyzer] Recipe now requires "+mTotalCount+"x "+mainDust.getDisplayName()+" as input.");
- }
- else {
- Logger.MATERIALS("[Electrolyzer] Could not find valid input dust, exiting.");
- }
+ Logger.MATERIALS("[Electrolyzer] Could not find valid input dust, exiting.");
}
+ }
- for (int j=0;j<mInternalOutputs.length;j++){
- if (mInternalOutputs[j] == null){
- mInternalOutputs[j] = GT_Values.NI;
- Logger.MATERIALS("[Electrolyzer] Set slot "+j+" to null.");
- }
- else {
- Logger.MATERIALS("[Electrolyzer] Set slot "+j+" to "+mInternalOutputs[j].getDisplayName()+".");
- }
+ for (int j=0;j<mInternalOutputs.length;j++){
+ if (mInternalOutputs[j] == null){
+ mInternalOutputs[j] = GT_Values.NI;
+ Logger.MATERIALS("[Electrolyzer] Set slot "+j+" to null.");
+ }
+ else {
+ Logger.MATERIALS("[Electrolyzer] Set slot "+j+" to "+mInternalOutputs[j].getDisplayName()+".");
}
+ }
- try{
- if (addElectrolyzerRecipe(
- mainDust,
- emptyCell, //input 2
- null, //Input fluid 1
- null, //Output fluid 1
- mInternalOutputs[0],
- mInternalOutputs[1],
- mInternalOutputs[2],
- mInternalOutputs[3],
- mInternalOutputs[4],
- mInternalOutputs[5],
- mChances,
- 20*1*(tVoltageMultiplier/10),
- tVoltageMultiplier)){
- Logger.MATERIALS("[Electrolyzer] Generated Electrolyzer recipe for "+material.getDust(1).getDisplayName());
- }
- else {
- Logger.MATERIALS("[Electrolyzer] Failed to generate Electrolyzer recipe for "+material.getDust(1).getDisplayName());
- }
+ try{
+ if (addElectrolyzerRecipe(
+ mainDust,
+ emptyCell, //input 2
+ null, //Input fluid 1
+ null, //Output fluid 1
+ mInternalOutputs[0],
+ mInternalOutputs[1],
+ mInternalOutputs[2],
+ mInternalOutputs[3],
+ mInternalOutputs[4],
+ mInternalOutputs[5],
+ mChances,
+ 20*1*(tVoltageMultiplier/10),
+ tVoltageMultiplier)){
+ Logger.MATERIALS("[Electrolyzer] Generated Electrolyzer recipe for "+matDust.getDisplayName());
}
- catch(Throwable t){
- t.printStackTrace();
+ else {
+ Logger.MATERIALS("[Electrolyzer] Failed to generate Electrolyzer recipe for "+matDust.getDisplayName());
}
}
- else if (componentMap.size() > 6 && componentMap.size() <= 9){
- Logger.MATERIALS("[Issue][Electrolyzer] "+material.getLocalizedName()+" is composed of over 6 materials, so an electrolyzer recipe for processing cannot be generated. Trying to create one for the Dehydrator instead.");
-
- ItemStack mInternalOutputs[] = new ItemStack[9];
- int mChances[] = new int[9];
- int mCellCount = 0;
-
- int mTotalCount = 0;
-
- int mCounter = 0;
- for (Pair<Integer, Material> f : componentMap){
- if (f.getValue().getState() != MaterialState.SOLID){
- Logger.MATERIALS("[Dehydrator] Found Fluid Component, adding "+f.getKey()+" cells of "+f.getValue().getLocalizedName()+".");
- mInternalOutputs[mCounter++] = f.getValue().getCell(f.getKey());
- mCellCount += f.getKey();
- mTotalCount += f.getKey();
- Logger.MATERIALS("[Dehydrator] In total, adding "+mCellCount+" cells for "+material.getLocalizedName()+" processing.");
- }
- else {
- Logger.MATERIALS("[Dehydrator] Found Solid Component, adding "+f.getKey()+" dusts of "+f.getValue().getLocalizedName()+".");
- mInternalOutputs[mCounter++] = f.getValue().getDust(f.getKey());
- mTotalCount += f.getKey();
- }
- }
-
- //Build Output Array
- for (int g=0;g<mInternalOutputs.length;g++){
- Logger.MATERIALS("[Dehydrator] Is output["+g+"] valid with a chance? "+(mInternalOutputs[g] != null ? 10000 : 0));
- mChances[g] = (mInternalOutputs[g] != null ? 10000 : 0);
+ catch(Throwable t){
+ t.printStackTrace();
+ }
+ }
+ else if (componentMap.size() > 6 && componentMap.size() <= 9){
+ Logger.MATERIALS("[Issue][Electrolyzer] "+material.getLocalizedName()+" is composed of over 6 materials, so an electrolyzer recipe for processing cannot be generated. Trying to create one for the Dehydrator instead.");
+
+ ItemStack mInternalOutputs[] = new ItemStack[9];
+ int mChances[] = new int[9];
+ int mCellCount = 0;
+
+ int mTotalCount = 0;
+
+ int mCounter = 0;
+ for (Pair<Integer, Material> f : componentMap){
+ if (f.getValue().getState() != MaterialState.SOLID){
+ Logger.MATERIALS("[Dehydrator] Found Fluid Component, adding "+f.getKey()+" cells of "+f.getValue().getLocalizedName()+".");
+ mInternalOutputs[mCounter++] = f.getValue().getCell(f.getKey());
+ mCellCount += f.getKey();
+ mTotalCount += f.getKey();
+ Logger.MATERIALS("[Dehydrator] In total, adding "+mCellCount+" cells for "+material.getLocalizedName()+" processing.");
}
-
- ItemStack emptyCell = null;
- if (mCellCount > 0){
- emptyCell = ItemUtils.getItemStackOfAmountFromOreDict("cellEmpty", mCellCount);
- Logger.MATERIALS("[Dehydrator] Recipe now requires "+mCellCount+" empty cells as input.");
+ else {
+ Logger.MATERIALS("[Dehydrator] Found Solid Component, adding "+f.getKey()+" dusts of "+f.getValue().getLocalizedName()+".");
+ mInternalOutputs[mCounter++] = f.getValue().getDust(f.getKey());
+ mTotalCount += f.getKey();
}
+ }
+
+ //Build Output Array
+ for (int g=0;g<mInternalOutputs.length;g++){
+ Logger.MATERIALS("[Dehydrator] Is output["+g+"] valid with a chance? "+(mInternalOutputs[g] != null ? 10000 : 0));
+ mChances[g] = (mInternalOutputs[g] != null ? 10000 : 0);
+ }
+
+ ItemStack emptyCell = null;
+ if (mCellCount > 0){
+ emptyCell = ItemUtils.getItemStackOfAmountFromOreDict("cellEmpty", mCellCount);
+ Logger.MATERIALS("[Dehydrator] Recipe now requires "+mCellCount+" empty cells as input.");
+ }
- ItemStack mainDust = material.getDust(material.smallestStackSizeWhenProcessing);
+ ItemStack mainDust = material.getDust(material.smallestStackSizeWhenProcessing);
+ if (mainDust != null){
+ Logger.MATERIALS("[Dehydrator] Recipe now requires "+material.smallestStackSizeWhenProcessing+"x "+mainDust.getDisplayName()+" as input.");
+ }
+ else {
+ mainDust = material.getDust(mTotalCount);
+ Logger.MATERIALS("[Dehydrator] Could not find valid input dust, trying alternative.");
if (mainDust != null){
- Logger.MATERIALS("[Dehydrator] Recipe now requires "+material.smallestStackSizeWhenProcessing+"x "+mainDust.getDisplayName()+" as input.");
+ Logger.MATERIALS("[Dehydrator] Recipe now requires "+mTotalCount+"x "+mainDust.getDisplayName()+" as input.");
}
else {
- mainDust = material.getDust(mTotalCount);
- Logger.MATERIALS("[Dehydrator] Could not find valid input dust, trying alternative.");
- if (mainDust != null){
- Logger.MATERIALS("[Dehydrator] Recipe now requires "+mTotalCount+"x "+mainDust.getDisplayName()+" as input.");
- }
- else {
- Logger.MATERIALS("[Dehydrator] Could not find valid input dust, exiting.");
- }
+ Logger.MATERIALS("[Dehydrator] Could not find valid input dust, exiting.");
}
+ }
- for (int j=0;j<mInternalOutputs.length;j++){
- if (mInternalOutputs[j] == null){
- mInternalOutputs[j] = GT_Values.NI;
- Logger.MATERIALS("[Dehydrator] Set slot "+j+" to null.");
- }
- else {
- Logger.MATERIALS("[Dehydrator] Set slot "+j+" to "+mInternalOutputs[j].getDisplayName()+".");
- }
+ for (int j=0;j<mInternalOutputs.length;j++){
+ if (mInternalOutputs[j] == null){
+ mInternalOutputs[j] = GT_Values.NI;
+ Logger.MATERIALS("[Dehydrator] Set slot "+j+" to null.");
}
+ else {
+ Logger.MATERIALS("[Dehydrator] Set slot "+j+" to "+mInternalOutputs[j].getDisplayName()+".");
+ }
+ }
- try{
+ try{
- if (CORE.RA.addDehydratorRecipe(
- new ItemStack[]{mainDust, emptyCell},
- null,
- null,
- mInternalOutputs,
- mChances,
- 20*1*(tVoltageMultiplier/10),
- tVoltageMultiplier)){
- Logger.MATERIALS("[Dehydrator] Generated Dehydrator recipe for "+material.getDust(1).getDisplayName());
- }
- else {
- Logger.MATERIALS("[Dehydrator] Failed to generate Dehydrator recipe for "+material.getDust(1).getDisplayName());
- }
+ if (CORE.RA.addDehydratorRecipe(
+ new ItemStack[]{mainDust, emptyCell},
+ null,
+ null,
+ mInternalOutputs,
+ mChances,
+ 20*1*(tVoltageMultiplier/10),
+ tVoltageMultiplier)){
+ Logger.MATERIALS("[Dehydrator] Generated Dehydrator recipe for "+matDust.getDisplayName());
}
- catch(Throwable t){
- t.printStackTrace();
+ else {
+ Logger.MATERIALS("[Dehydrator] Failed to generate Dehydrator recipe for "+matDust.getDisplayName());
}
+ }
+ catch(Throwable t){
+ t.printStackTrace();
+ }
- }
+ }
- /**
- * Shaped Crafting
- */
- RecipeUtils.recipeBuilder(
- CI.craftingToolHammer_Hard, null, null,
- material.getCrushedPurified(1), null, null,
- null, null, null,
- material.getDustPurified(1));
+ /**
+ * Shaped Crafting
+ */
+ RecipeUtils.recipeBuilder(
+ CI.craftingToolHammer_Hard, null, null,
+ material.getCrushedPurified(1), null, null,
+ null, null, null,
+ material.getDustPurified(1));
- RecipeUtils.recipeBuilder(
- CI.craftingToolHammer_Hard, null, null,
- material.getCrushed(1), null, null,
- null, null, null,
- material.getDustImpure(1));
+ RecipeUtils.recipeBuilder(
+ CI.craftingToolHammer_Hard, null, null,
+ material.getCrushed(1), null, null,
+ null, null, null,
+ material.getDustImpure(1));
- RecipeUtils.recipeBuilder(
- CI.craftingToolHammer_Hard, null, null,
- material.getCrushedCentrifuged(1), null, null,
- null, null, null,
- material.getDust(1));
+ RecipeUtils.recipeBuilder(
+ CI.craftingToolHammer_Hard, null, null,
+ material.getCrushedCentrifuged(1), null, null,
+ null, null, null,
+ matDust);
- final ItemStack normalDust = material.getDust(1);
- final ItemStack smallDust = material.getSmallDust(1);
- final ItemStack tinyDust = material.getTinyDust(1);
+ final ItemStack normalDust = matDust;
+ final ItemStack smallDust = material.getSmallDust(1);
+ final ItemStack tinyDust = material.getTinyDust(1);
- if (RecipeUtils.recipeBuilder(
- tinyDust, tinyDust, tinyDust,
- tinyDust, tinyDust, tinyDust,
- tinyDust, tinyDust, tinyDust,
- normalDust)){
- Logger.WARNING("9 Tiny dust to 1 Dust Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING("9 Tiny dust to 1 Dust Recipe: "+material.getLocalizedName()+" - Failed");
- }
+ if (RecipeUtils.recipeBuilder(
+ tinyDust, tinyDust, tinyDust,
+ tinyDust, tinyDust, tinyDust,
+ tinyDust, tinyDust, tinyDust,
+ normalDust)){
+ Logger.WARNING("9 Tiny dust to 1 Dust Recipe: "+material.getLocalizedName()+" - Success");
+ }
+ else {
+ Logger.WARNING("9 Tiny dust to 1 Dust Recipe: "+material.getLocalizedName()+" - Failed");
+ }
- if (RecipeUtils.recipeBuilder(
- normalDust, null, null,
- null, null, null,
- null, null, null,
- material.getTinyDust(9))){
- Logger.WARNING("9 Tiny dust from 1 Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING("9 Tiny dust from 1 Recipe: "+material.getLocalizedName()+" - Failed");
- }
+ if (RecipeUtils.recipeBuilder(
+ normalDust, null, null,
+ null, null, null,
+ null, null, null,
+ material.getTinyDust(9))){
+ Logger.WARNING("9 Tiny dust from 1 Recipe: "+material.getLocalizedName()+" - Success");
+ }
+ else {
+ Logger.WARNING("9 Tiny dust from 1 Recipe: "+material.getLocalizedName()+" - Failed");
+ }
- if (RecipeUtils.recipeBuilder(
- smallDust, smallDust, null,
- smallDust, smallDust, null,
- null, null, null,
- normalDust)){
- Logger.WARNING("4 Small dust to 1 Dust Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING("4 Small dust to 1 Dust Recipe: "+material.getLocalizedName()+" - Failed");
- }
+ if (RecipeUtils.recipeBuilder(
+ smallDust, smallDust, null,
+ smallDust, smallDust, null,
+ null, null, null,
+ normalDust)){
+ Logger.WARNING("4 Small dust to 1 Dust Recipe: "+material.getLocalizedName()+" - Success");
+ }
+ else {
+ Logger.WARNING("4 Small dust to 1 Dust Recipe: "+material.getLocalizedName()+" - Failed");
+ }
- if (RecipeUtils.recipeBuilder(
- null, normalDust, null,
- null, null, null,
- null, null, null,
- material.getSmallDust(4))){
- Logger.WARNING("4 Small dust from 1 Dust Recipe: "+material.getLocalizedName()+" - Success");
- }
- else {
- Logger.WARNING("4 Small dust from 1 Dust Recipe: "+material.getLocalizedName()+" - Failed");
- }
+ if (RecipeUtils.recipeBuilder(
+ null, normalDust, null,
+ null, null, null,
+ null, null, null,
+ material.getSmallDust(4))){
+ Logger.WARNING("4 Small dust from 1 Dust Recipe: "+material.getLocalizedName()+" - Success");
+ }
+ else {
+ Logger.WARNING("4 Small dust from 1 Dust Recipe: "+material.getLocalizedName()+" - Failed");
+ }
//}
}
@@ -485,4 +539,20 @@ public class RecipeGen_Ore implements Runnable{
return true;
}
+ public static ItemStack getTinyDust(Material m) {
+ ItemStack x = m.getTinyDust(1);
+ if (x == null) {
+ x = mStone.getDust(1);
+ }
+ return x;
+ }
+
+ public static ItemStack getDust(Material m) {
+ ItemStack x = m.getDust(1);
+ if (x == null) {
+ x = mStone.getDust(1);
+ }
+ return x;
+ }
+
}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_ShapedCrafting.java b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_ShapedCrafting.java
index df50f6c7d7..1646ab1535 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_ShapedCrafting.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_ShapedCrafting.java
@@ -56,7 +56,7 @@ public class RecipeGen_ShapedCrafting extends RecipeGen_Base {
//Plates
//Single Plate Shaped/Shapeless
- if (material.getPlate(1) != null)
+ if (material.getPlate(1) != null && material.getIngot(1) != null)
GT_ModHandler.addCraftingRecipe(
material.getPlate(1),
gregtech.api.util.GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | gregtech.api.util.GT_ModHandler.RecipeBits.BUFFERED,
@@ -66,7 +66,7 @@ public class RecipeGen_ShapedCrafting extends RecipeGen_Base {
Character.valueOf('B'),
material.getIngot(1)});
- if (material.getPlate(1) != null)
+ if (material.getPlate(1) != null && material.getIngot(1) != null)
GT_ModHandler.addShapelessCraftingRecipe(
material.getPlate(1),
new Object[]{gregtech.api.enums.ToolDictNames.craftingToolForgeHammer,
@@ -74,7 +74,7 @@ public class RecipeGen_ShapedCrafting extends RecipeGen_Base {
material.getIngot(1)});
//Double Plate Shaped/Shapeless
- if (material.getPlateDouble(1) != null)
+ if (material.getPlateDouble(1) != null && material.getPlate(1) != null)
GT_ModHandler.addCraftingRecipe(
material.getPlateDouble(1),
gregtech.api.util.GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | gregtech.api.util.GT_ModHandler.RecipeBits.BUFFERED,
@@ -84,7 +84,7 @@ public class RecipeGen_ShapedCrafting extends RecipeGen_Base {
Character.valueOf('B'),
material.getPlate(1)});
- if (material.getPlateDouble(1) != null)
+ if (material.getPlateDouble(1) != null && material.getPlate(1) != null)
GT_ModHandler.addShapelessCraftingRecipe(
material.getPlateDouble(1),
new Object[]{gregtech.api.enums.ToolDictNames.craftingToolForgeHammer,
@@ -92,7 +92,7 @@ public class RecipeGen_ShapedCrafting extends RecipeGen_Base {
material.getPlate(1)});
//Ring Recipe
- if (!material.isRadioactive && material.getRing(1) != null){
+ if (!material.isRadioactive && material.getRing(1) != null && material.getRod(1) != null){
if (CORE.GTNH){
if (RecipeUtils.recipeBuilder(
"craftingToolHardHammer", null, null,
@@ -121,7 +121,7 @@ public class RecipeGen_ShapedCrafting extends RecipeGen_Base {
//Framebox Recipe
- if (!material.isRadioactive && material.getFrameBox(1) != null){
+ if (!material.isRadioactive && material.getFrameBox(1) != null && material.getRod(1) != null){
final ItemStack stackStick = material.getRod(1);
if (RecipeUtils.recipeBuilder(
stackStick, stackStick, stackStick,
@@ -166,7 +166,7 @@ public class RecipeGen_ShapedCrafting extends RecipeGen_Base {
//Shaped Recipe - Bolts
- if (!material.isRadioactive && material.getBolt(1) != null){
+ if (!material.isRadioactive && material.getBolt(1) != null && material.getRod(1) != null){
if (RecipeUtils.recipeBuilder(
"craftingToolSaw", null, null,
null, material.getRod(1), null,
@@ -181,7 +181,7 @@ public class RecipeGen_ShapedCrafting extends RecipeGen_Base {
//Shaped Recipe - Ingot to Rod
- if (material.getRod(1) != null)
+ if (material.getRod(1) != null && material.getIngot(1) != null)
if (RecipeUtils.recipeBuilder(
"craftingToolFile", null, null,
null, material.getIngot(1), null,
@@ -195,7 +195,7 @@ public class RecipeGen_ShapedCrafting extends RecipeGen_Base {
//Shaped Recipe - Long Rod to two smalls
- if (material.getRod(1) != null)
+ if (material.getRod(1) != null && material.getLongRod(1) != null)
if (RecipeUtils.recipeBuilder(
"craftingToolSaw", null, null,
material.getLongRod(1), null, null,
@@ -208,7 +208,7 @@ public class RecipeGen_ShapedCrafting extends RecipeGen_Base {
}
//Two small to long rod
- if (material.getLongRod(1) != null)
+ if (material.getLongRod(1) != null && material.getRod(1) != null)
if (RecipeUtils.recipeBuilder(
material.getRod(1), "craftingToolHardHammer", material.getRod(1),
null, null, null,
@@ -221,7 +221,7 @@ public class RecipeGen_ShapedCrafting extends RecipeGen_Base {
}
//Rotor Recipe
- if (!material.isRadioactive && material.getRotor(1) != null){
+ if (!material.isRadioactive && material.getRotor(1) != null && material.getRing(1) != null && material.getPlate(1) != null && material.getScrew(1) != null){
if (RecipeUtils.recipeBuilder(
material.getPlate(1), "craftingToolHardHammer", material.getPlate(1),
material.getScrew(1), material.getRing(1), "craftingToolFile",
@@ -235,7 +235,7 @@ public class RecipeGen_ShapedCrafting extends RecipeGen_Base {
}
//Gear Recipe
- if (!material.isRadioactive && material.getGear(1) != null){
+ if (!material.isRadioactive && material.getGear(1) != null && material.getPlate(1) != null && material.getRod(1) != null){
if (RecipeUtils.recipeBuilder(
material.getRod(1), material.getPlate(1), material.getRod(1),
material.getPlate(1), "craftingToolWrench", material.getPlate(1),
@@ -249,7 +249,7 @@ public class RecipeGen_ShapedCrafting extends RecipeGen_Base {
}
//Screws
- if (!material.isRadioactive && material.getScrew(1) != null){
+ if (!material.isRadioactive && material.getScrew(1) != null && material.getBolt(1) != null){
if (RecipeUtils.recipeBuilder(
"craftingToolFile", material.getBolt(1), null,
material.getBolt(1), null, null,