diff options
author | D-Cysteine <54219287+D-Cysteine@users.noreply.github.com> | 2021-07-24 06:43:42 -0600 |
---|---|---|
committer | D-Cysteine <54219287+D-Cysteine@users.noreply.github.com> | 2021-07-24 06:43:42 -0600 |
commit | c090eda9e4fc51a5932e44e471de1870fe293526 (patch) | |
tree | cf5e2fa413638d05a35557bdf8d48ffc715b1103 /src/Java/gtPlusPlus/xmod/gregtech/api | |
parent | 97f37fd812269cea21b928c9e3de949147b575e0 (diff) | |
download | GT5-Unofficial-c090eda9e4fc51a5932e44e471de1870fe293526.tar.gz GT5-Unofficial-c090eda9e4fc51a5932e44e471de1870fe293526.tar.bz2 GT5-Unofficial-c090eda9e4fc51a5932e44e471de1870fe293526.zip |
Update SolarGenerator and SteamCondenser with similar changes
Diffstat (limited to 'src/Java/gtPlusPlus/xmod/gregtech/api')
5 files changed, 36 insertions, 16 deletions
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/gui/CONTAINER_SolarGenerator.java b/src/Java/gtPlusPlus/xmod/gregtech/api/gui/CONTAINER_SolarGenerator.java index 356f1a89ae..a3f58836e3 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/api/gui/CONTAINER_SolarGenerator.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/api/gui/CONTAINER_SolarGenerator.java @@ -15,14 +15,12 @@ import gtPlusPlus.xmod.gregtech.common.tileentities.generators.GregtechMetaTileE public class CONTAINER_SolarGenerator extends GT_ContainerMetaTile_Machine { - private final int mSteamCapacity; public int mWaterAmount = 0; public int mSteamAmount = 0; public int mProcessingEnergy = 0; public int mTemperature = 2; - public CONTAINER_SolarGenerator(final InventoryPlayer aInventoryPlayer, final IGregTechTileEntity aTileEntity, final int aSteamCapacity) { + public CONTAINER_SolarGenerator(final InventoryPlayer aInventoryPlayer, final IGregTechTileEntity aTileEntity) { super(aInventoryPlayer, aTileEntity); - this.mSteamCapacity = aSteamCapacity; } @Override diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/gui/CONTAINER_SteamCondenser.java b/src/Java/gtPlusPlus/xmod/gregtech/api/gui/CONTAINER_SteamCondenser.java index 3211d53d08..6fcd53b139 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/api/gui/CONTAINER_SteamCondenser.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/api/gui/CONTAINER_SteamCondenser.java @@ -16,10 +16,9 @@ import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.generato public class CONTAINER_SteamCondenser extends GT_ContainerMetaTile_Machine { - public CONTAINER_SteamCondenser(final InventoryPlayer aInventoryPlayer, final IGregTechTileEntity aTileEntity, final int aSteamCapacity) + public CONTAINER_SteamCondenser(final InventoryPlayer aInventoryPlayer, final IGregTechTileEntity aTileEntity) { super(aInventoryPlayer, aTileEntity); - this.mSteamCapacity = aSteamCapacity; } @Override @@ -47,7 +46,6 @@ public class CONTAINER_SteamCondenser extends GT_ContainerMetaTile_Machine public int mSteamAmount = 0; public int mProcessingEnergy = 0; public int mTemperature = 2; - public int mSteamCapacity; public long mTickingTime = ((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).RI; @Override @@ -57,16 +55,17 @@ public class CONTAINER_SteamCondenser extends GT_ContainerMetaTile_Machine if ((this.mTileEntity.isClientSide()) || (this.mTileEntity.getMetaTileEntity() == null)) { return; } + int steamCapacity = ((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).getSteamCapacity(); + int waterCapacity = ((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).getCapacity(); this.mTemperature = ((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).mTemperature; - this.mSteamCapacity = (int) ((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).maxSteamStore(); this.mProcessingEnergy = ((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).mProcessingEnergy; this.mSteamAmount = (((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).mSteam == null ? 0 : ((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).mSteam.amount); this.mWaterAmount = (((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).mFluid == null ? 0 : ((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).mFluid.amount); this.mTickingTime = ((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).RI; this.mTemperature = Math.min(54, Math.max(0, (this.mTemperature * 54) / (((GregtechMetaBoilerBase)this.mTileEntity.getMetaTileEntity()).maxProgresstime() - 10))); - this.mSteamAmount = Math.min(54, Math.max(0, (this.mSteamAmount * 54) / (this.mSteamCapacity - 100))); - this.mWaterAmount = Math.min(54, Math.max(0, (this.mWaterAmount * 54) / 15900)); + this.mSteamAmount = Math.min(54, Math.max(0, (this.mSteamAmount * 54) / (steamCapacity - 100))); + this.mWaterAmount = Math.min(54, Math.max(0, (this.mWaterAmount * 54) / (waterCapacity - 100))); this.mProcessingEnergy = Math.min(14, Math.max(this.mProcessingEnergy > 0 ? 1 : 0, (this.mProcessingEnergy * 14) / 1000)); final Iterator var2 = this.crafters.iterator(); diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/gui/GUI_SolarGenerator.java b/src/Java/gtPlusPlus/xmod/gregtech/api/gui/GUI_SolarGenerator.java index 912e7ded18..f0b3a0c879 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/api/gui/GUI_SolarGenerator.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/api/gui/GUI_SolarGenerator.java @@ -7,8 +7,8 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; public class GUI_SolarGenerator extends GT_GUIContainerMetaTile_Machine { - public GUI_SolarGenerator(final InventoryPlayer aInventoryPlayer, final IGregTechTileEntity aTileEntity, final String aTextureName, final int aSteamCapacity) { - super(new CONTAINER_SolarGenerator(aInventoryPlayer, aTileEntity, aSteamCapacity), "gregtech:textures/gui/" + aTextureName); + public GUI_SolarGenerator(final InventoryPlayer aInventoryPlayer, final IGregTechTileEntity aTileEntity, final String aTextureName) { + super(new CONTAINER_SolarGenerator(aInventoryPlayer, aTileEntity), "gregtech:textures/gui/" + aTextureName); } @Override diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/gui/GUI_SteamCondenser.java b/src/Java/gtPlusPlus/xmod/gregtech/api/gui/GUI_SteamCondenser.java index e3f2f9d41b..88a3e00bb5 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/api/gui/GUI_SteamCondenser.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/api/gui/GUI_SteamCondenser.java @@ -10,9 +10,9 @@ public class GUI_SteamCondenser extends GT_GUIContainerMetaTile_Machine { long tickTime = 0; - public GUI_SteamCondenser(final InventoryPlayer aInventoryPlayer, final IGregTechTileEntity aTileEntity, final String aTextureName, final int aSteamCapacity) + public GUI_SteamCondenser(final InventoryPlayer aInventoryPlayer, final IGregTechTileEntity aTileEntity, final String aTextureName) { - super(new CONTAINER_SteamCondenser(aInventoryPlayer, aTileEntity, aSteamCapacity), CORE.RES_PATH_GUI + aTextureName); + super(new CONTAINER_SteamCondenser(aInventoryPlayer, aTileEntity), CORE.RES_PATH_GUI + aTextureName); } @Override diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechMetaBoilerBase.java b/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechMetaBoilerBase.java index 8ae735af95..99ad81a4a9 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechMetaBoilerBase.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/generators/GregtechMetaBoilerBase.java @@ -19,6 +19,7 @@ import gregtech.api.util.GT_Utility; import gtPlusPlus.core.util.math.MathUtils; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.FluidStack; +import net.minecraftforge.fluids.FluidTankInfo; import net.minecraftforge.fluids.IFluidHandler; public abstract class GregtechMetaBoilerBase extends GT_MetaTileEntity_BasicTank @@ -176,7 +177,13 @@ public abstract class GregtechMetaBoilerBase extends GT_MetaTileEntity_BasicTan @Override public FluidStack setDrainableStack(final FluidStack aFluid) { - this.mSteam = aFluid;return this.mSteam; + this.mSteam = aFluid; + return this.mSteam; + } + + @Override + public boolean isDrainableStackSeparate() { + return true; } @Override @@ -272,10 +279,10 @@ public abstract class GregtechMetaBoilerBase extends GT_MetaTileEntity_BasicTan } } if ((this.mSteam != null) && - (this.mSteam.amount > 32000)) + (this.mSteam.amount > getSteamCapacity())) { this.sendSound((byte)1); - this.mSteam.amount = 24000; + this.mSteam.amount = getSteamCapacity() * 3 / 4; } if ((this.mProcessingEnergy <= 0) && (aBaseMetaTileEntity.isAllowedToWork()) && (this.mInventory[2] != null)) { @@ -322,6 +329,16 @@ public abstract class GregtechMetaBoilerBase extends GT_MetaTileEntity_BasicTan } @Override + // Since this type of machine can have different water and steam capacities, we need to override getTankInfo() to + // support returning those different capacities. + public FluidTankInfo[] getTankInfo(ForgeDirection aSide) { + return new FluidTankInfo[]{ + new FluidTankInfo(this.mFluid, getCapacity()), + new FluidTankInfo(this.mSteam, getSteamCapacity()) + }; + } + + @Override public boolean allowPullStack(final IGregTechTileEntity aBaseMetaTileEntity, final int aIndex, final byte aSide, final ItemStack aStack) { return (aIndex == 1) || (aIndex == 3); @@ -351,6 +368,12 @@ public abstract class GregtechMetaBoilerBase extends GT_MetaTileEntity_BasicTan return 16000; } + // This type of machine can have different water and steam capacities. + public int getSteamCapacity() + { + return 32000; + } + @Override public int getTankPressure() { |