aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/common/tileentities/machines
diff options
context:
space:
mode:
authorBlueWeabo <76872108+BlueWeabo@users.noreply.github.com>2022-12-14 19:40:41 +0200
committerGitHub <noreply@github.com>2022-12-14 19:40:41 +0200
commit00a41ed4b1ed5ef4077ebaca1d228f1edb9586cf (patch)
tree4536eab1b9554e3013e6d4ba817c9e8d33e09423 /src/main/java/gregtech/common/tileentities/machines
parent288cf4062fe684b84ac18b076e3c55586e4761f1 (diff)
downloadGT5-Unofficial-00a41ed4b1ed5ef4077ebaca1d228f1edb9586cf.tar.gz
GT5-Unofficial-00a41ed4b1ed5ef4077ebaca1d228f1edb9586cf.tar.bz2
GT5-Unofficial-00a41ed4b1ed5ef4077ebaca1d228f1edb9586cf.zip
Do some fixes for the PCB Factory (#1549)
* fixes all over the place * shouldn't have edited that * make easier to understand
Diffstat (limited to 'src/main/java/gregtech/common/tileentities/machines')
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PCBFactory.java20
1 files changed, 12 insertions, 8 deletions
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PCBFactory.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PCBFactory.java
index d909dd4de7..2f74adea64 100644
--- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PCBFactory.java
+++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PCBFactory.java
@@ -543,10 +543,10 @@ public class GT_MetaTileEntity_PCBFactory
return false;
}
- if (((recipeBitMap & mTier1BitMap) == 1
- || (recipeBitMap & mTier2BitMap) == 1
- || (recipeBitMap & mTier3BitMap) == 1)
- && ((recipeBitMap & mBioBitMap) == 0 || (recipeBitMap & mBioBitMap) == 1 == mBioUpgrade)) {
+ if (((recipeBitMap & mTier1BitMap) == 1 && (mTier >= 1)
+ || (recipeBitMap & mTier2BitMap) == 1 && (mTier >= 2)
+ || (recipeBitMap & mTier3BitMap) == 1 && (mTier == 3))
+ && ((recipeBitMap & mBioBitMap) == 0 || (recipeBitMap & mBioBitMap) == 1 && mBioUpgrade)) {
int aCurrentParallel = 0;
for (int i = 0; i < aMaxParallel; i++) {
@@ -580,7 +580,7 @@ public class GT_MetaTileEntity_PCBFactory
mOutputItems = new ItemStack[tRecipe.mOutputs.length];
ArrayList<ItemStack> tOutputs = new ArrayList<ItemStack>();
- int remainingEfficiency = getMaxEfficiency(aStack);
+ int remainingEfficiency = getMaxEfficiency(aStack) < 10000 ? 10000 : getMaxEfficiency(aStack);
int repeats = (int) Math.ceil(getMaxEfficiency(aStack) / 10000);
for (int j = 0; j < repeats; j++) {
int chanced = getBaseMetaTileEntity().getRandomNumber(10000);
@@ -614,7 +614,9 @@ public class GT_MetaTileEntity_PCBFactory
if (ticker % 20 == 0) {
if (mOCTier1) {
- if (!depleteInput(GT_ModHandler.getDistilledWater(COOLANT_CONSUMED_PER_SEC))) {
+ FluidStack tFluid = GT_ModHandler.getDistilledWater(COOLANT_CONSUMED_PER_SEC);
+ FluidStack tLiquid = mCoolantInputHatch.drain(tFluid.amount, true);
+ if (tLiquid == null || tLiquid.amount < tFluid.amount) {
criticalStopMachine();
return false;
}
@@ -622,7 +624,9 @@ public class GT_MetaTileEntity_PCBFactory
if (mOCTier2) {
Fluid superCoolant = FluidRegistry.getFluid("supercoolant");
- if (!depleteInput(new FluidStack(superCoolant, COOLANT_CONSUMED_PER_SEC))) {
+ FluidStack tFluid = new FluidStack(superCoolant, COOLANT_CONSUMED_PER_SEC);
+ FluidStack tLiquid = mCoolantInputHatch.drain(tFluid.amount, true);
+ if (tLiquid == null || tLiquid.amount < tFluid.amount) {
criticalStopMachine();
return false;
}
@@ -726,7 +730,7 @@ public class GT_MetaTileEntity_PCBFactory
if (aMetaTileEntity == null) return false;
if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_Input) {
((GT_MetaTileEntity_Hatch) aMetaTileEntity).updateTexture(aBaseCasingIndex);
- ((GT_MetaTileEntity_Hatch_Input) aMetaTileEntity).mRecipeMap = getRecipeMap();
+ ((GT_MetaTileEntity_Hatch_Input) aMetaTileEntity).mRecipeMap = null;
mCoolantInputHatch = (GT_MetaTileEntity_Hatch_Input) aMetaTileEntity;
return true;
}