diff options
author | Alkalus <3060479+draknyte1@users.noreply.github.com> | 2021-12-10 09:51:39 +0000 |
---|---|---|
committer | Alkalus <3060479+draknyte1@users.noreply.github.com> | 2021-12-10 09:51:39 +0000 |
commit | cf938c1ed77f873782e2c2c4869947562236b7b3 (patch) | |
tree | cc7aa78ef92b263b3d8a4ffaec6c10ee603f889f /src/Java/gregtech/api/util/GasSpargingRecipe.java | |
parent | 8f6560f3c2cfaa36f57d3220a72fbb931fb9324d (diff) | |
download | GT5-Unofficial-cf938c1ed77f873782e2c2c4869947562236b7b3.tar.gz GT5-Unofficial-cf938c1ed77f873782e2c2c4869947562236b7b3.tar.bz2 GT5-Unofficial-cf938c1ed77f873782e2c2c4869947562236b7b3.zip |
Added ability to clear all output hatches on GT++ multis with a plunger.
Changed fluid textures for many autogenerated fluids.
Renamed & remapped Cryolite to Cryolite (F).
Fixed toArray() in AutoMap.java.
Fixed Sparging.
Final touches to Nuclear Fuel reprocessing.
Diffstat (limited to 'src/Java/gregtech/api/util/GasSpargingRecipe.java')
-rw-r--r-- | src/Java/gregtech/api/util/GasSpargingRecipe.java | 45 |
1 files changed, 35 insertions, 10 deletions
diff --git a/src/Java/gregtech/api/util/GasSpargingRecipe.java b/src/Java/gregtech/api/util/GasSpargingRecipe.java index 86e52e19de..493c31dc65 100644 --- a/src/Java/gregtech/api/util/GasSpargingRecipe.java +++ b/src/Java/gregtech/api/util/GasSpargingRecipe.java @@ -1,32 +1,31 @@ package gregtech.api.util; +import gtPlusPlus.api.objects.data.AutoMap; +import gtPlusPlus.core.util.data.ArrayUtils; +import gtPlusPlus.core.util.minecraft.ItemUtils; import gtPlusPlus.core.util.minecraft.MaterialUtils; -import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; public class GasSpargingRecipe implements Comparable<GasSpargingRecipe> { public final FluidStack mInputGas; public final FluidStack mInputSpentFuel; + public final FluidStack mOutputSpargedFuel; public final int[] mMaxOutputQuantity; public final FluidStack[] mFluidInputs; public final FluidStack[] mFluidOutputs; - public final ItemStack[] mInputs; - public final ItemStack[] mOutputs; public final int mDuration; public final int mEUt; - public GasSpargingRecipe(FluidStack aSpargeGas, FluidStack aSpentFuel, FluidStack[] aOutputs, int[] aMaxOutputQuantity) { + public GasSpargingRecipe(FluidStack aSpargeGas, FluidStack aSpentFuel, FluidStack aSpargedFuel, FluidStack[] aOutputs, int[] aMaxOutputQuantity) { mInputGas = aSpargeGas; mInputSpentFuel = aSpentFuel; + mOutputSpargedFuel = aSpargedFuel; mFluidInputs = new FluidStack[] {mInputGas, mInputSpentFuel}; + aOutputs = ArrayUtils.insertElementAtIndex(aOutputs, 0, aSpargeGas); + aOutputs = ArrayUtils.insertElementAtIndex(aOutputs, 1, aSpargedFuel); mFluidOutputs = aOutputs; mMaxOutputQuantity = aMaxOutputQuantity; - mInputs = new ItemStack[] {GT_Utility.getFluidDisplayStack(mFluidInputs[0], true), GT_Utility.getFluidDisplayStack(mFluidInputs[1], true)}; - mOutputs = new ItemStack[mFluidOutputs.length]; - for (int i=0; i<mFluidOutputs.length;i++) { - mOutputs[i] = GT_Utility.getFluidDisplayStack(mFluidOutputs[i], true); - } mDuration = 20 * 60 * 5; mEUt = MaterialUtils.getVoltageForTier(3); } @@ -42,7 +41,14 @@ public class GasSpargingRecipe implements Comparable<GasSpargingRecipe> { return false; } - public int getMaxOutput(final int aIndex) { + public int getMaxOutput(int aIndex) { + if (aIndex == 0) { + return mInputGas.amount * 100; + } + else if (aIndex == 1) { + return mOutputSpargedFuel.amount * 100; + } + aIndex -= 2; if ((aIndex < 0) || (aIndex >= this.mMaxOutputQuantity.length)) { return 10000; } @@ -59,6 +65,15 @@ public class GasSpargingRecipe implements Comparable<GasSpargingRecipe> { } return true; } + + public boolean containsInputs(FluidStack aSpargeGas, FluidStack aSpentFuel) { + if (aSpargeGas != null && aSpargeGas.getFluid().equals(this.mInputGas.getFluid())) { + if (aSpentFuel != null && aSpentFuel.getFluid().equals(this.mInputSpentFuel.getFluid())) { + return true; + } + } + return false; + } @Override public int compareTo(GasSpargingRecipe o) { @@ -70,5 +85,15 @@ public class GasSpargingRecipe implements Comparable<GasSpargingRecipe> { return -1; } } + + public String[] getRecipeInfo() { + AutoMap<String> result = new AutoMap<String>(); + result.put("Input "+ItemUtils.getArrayStackNames(mFluidInputs)); + result.put("Output "+ItemUtils.getArrayStackNames(mFluidOutputs)); + result.put("Duration: "+mDuration); + result.put("EU/t: "+mEUt); + String s[] = result.toArray(); + return s; + } } |