aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/com
diff options
context:
space:
mode:
authorMartin Robertz <dream-master@gmx.net>2021-09-28 18:23:39 +0200
committerGitHub <noreply@github.com>2021-09-28 18:23:39 +0200
commit15329949a92047a620d920e267e8566f3dd0c5b1 (patch)
treea70c729627519ee031463780bd7cd430b707aaee /src/main/java/com
parent2df75cd6bda63309ff57aeba2bcb69ba60a4ec0e (diff)
parent5fc62f31ad8c331386ff5097800b66b4f28875f5 (diff)
downloadGT5-Unofficial-15329949a92047a620d920e267e8566f3dd0c5b1.tar.gz
GT5-Unofficial-15329949a92047a620d920e267e8566f3dd0c5b1.tar.bz2
GT5-Unofficial-15329949a92047a620d920e267e8566f3dd0c5b1.zip
Merge pull request #43 from GTNewHorizons/mvf
allow MVF accept fluid input Former-commit-id: 2d67b3390f12fbbe8d22328d0f2cbe6c1afe75ea
Diffstat (limited to 'src/main/java/com')
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaVacuumFreezer.java26
1 files changed, 18 insertions, 8 deletions
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaVacuumFreezer.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaVacuumFreezer.java
index 1877a88183..2fdaa545dc 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaVacuumFreezer.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/multis/mega/GT_TileEntity_MegaVacuumFreezer.java
@@ -40,6 +40,7 @@ import gregtech.api.util.GT_Utility;
import gregtech.common.tileentities.machines.multi.GT_MetaTileEntity_VacuumFreezer;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
+import net.minecraftforge.fluids.FluidStack;
import java.util.ArrayList;
import java.util.List;
@@ -95,21 +96,30 @@ public class GT_TileEntity_MegaVacuumFreezer extends GT_MetaTileEntity_VacuumFre
@Override
public boolean checkRecipe(ItemStack itemStack) {
ItemStack[] tInputs = this.getStoredInputs().toArray(new ItemStack[0]);
+ FluidStack[] tInputFluids = this.getStoredFluids().toArray(new FluidStack[0]);
ArrayList<ItemStack> outputItems = new ArrayList<>();
+ ArrayList<FluidStack> outputFluids = new ArrayList<>();
long nominalV = LoaderReference.tectech ? TecTechUtils.getnominalVoltageTT(this) : BW_Util.getnominalVoltage(this);
byte tTier = (byte) Math.max(1, Math.min(GT_Utility.getTier(nominalV), V.length - 1));
- GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sVacuumRecipes.findRecipe(this.getBaseMetaTileEntity(), false, V[tTier], null, tInputs);
+ GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sVacuumRecipes.findRecipe(this.getBaseMetaTileEntity(), false, V[tTier], tInputFluids, tInputs);
boolean found_Recipe = false;
int processed = 0;
- while (this.getStoredInputs().size() > 0 && processed < ConfigHandler.megaMachinesMax) {
- if (tRecipe != null && ((long) tRecipe.mEUt * (processed + 1)) < nominalV && tRecipe.isRecipeInputEqual(true, null, tInputs)) {
+ while ((this.getStoredInputs().size() > 0 || this.getStoredFluids().size() > 0) && processed < ConfigHandler.megaMachinesMax) {
+ if (tRecipe != null && ((long) tRecipe.mEUt * (processed + 1)) < nominalV && tRecipe.isRecipeInputEqual(true, tInputFluids, tInputs)) {
found_Recipe = true;
- for (int i = 0; i < tRecipe.mOutputs.length; i++) {
- outputItems.add(tRecipe.getOutput(i));
+ if (tRecipe.mOutputs != null) {
+ for (int i = 0; i < tRecipe.mOutputs.length; i++) {
+ outputItems.add(tRecipe.getOutput(i));
+ }
+ }
+ if (tRecipe.mFluidOutputs != null) {
+ for (int i = 0; i < tRecipe.mFluidOutputs.length; i++) {
+ outputFluids.add(tRecipe.getFluidOutput(i));
+ }
}
++processed;
} else
@@ -138,6 +148,8 @@ public class GT_TileEntity_MegaVacuumFreezer extends GT_MetaTileEntity_VacuumFre
this.mMaxProgresstime = Math.max(1, this.mMaxProgresstime);
this.mOutputItems = new ItemStack[outputItems.size()];
this.mOutputItems = outputItems.toArray(this.mOutputItems);
+ this.mOutputFluids = new FluidStack[outputFluids.size()];
+ this.mOutputFluids = outputFluids.toArray(this.mOutputFluids);
this.updateSlots();
return true;
}
@@ -168,8 +180,6 @@ public class GT_TileEntity_MegaVacuumFreezer extends GT_MetaTileEntity_VacuumFre
&& BW_Util.check_layer(aBaseMetaTileEntity, 7, 1, 7, GregTech_API.sBlockCasings2, 1, 7, false, false, true, Blocks.air, -1, true, 17)
&& BW_Util.check_layer(aBaseMetaTileEntity, 7, 7, 8, GregTech_API.sBlockCasings2, 1, 7, false, false, true, GregTech_API.sBlockCasings2, 1, true, 17)
) &&
- !this.mInputBusses.isEmpty() &&
- !this.mOutputBusses.isEmpty() &&
!this.mMaintenanceHatches.isEmpty() &&
LoaderReference.tectech ?
(!this.getTecTechEnergyMultis().isEmpty() || !this.getTecTechEnergyTunnels().isEmpty() || !this.mEnergyHatches.isEmpty()) :
@@ -200,4 +210,4 @@ public class GT_TileEntity_MegaVacuumFreezer extends GT_MetaTileEntity_VacuumFre
public List getTecTechEnergyMultis() {
return TTMultiAmp;
}
-} \ No newline at end of file
+}