From 3681f2f989cb0b3c9f3d7649d2561d77fb8cfe4f Mon Sep 17 00:00:00 2001 From: chochem <40274384+chochem@users.noreply.github.com> Date: Wed, 22 Mar 2023 20:09:48 +0000 Subject: Fix super tank output rate based on the pump used (#1810) * fix tank output speed * sa --- .../storage/GT_MetaTileEntity_DigitalTankBase.java | 29 +++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalTankBase.java b/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalTankBase.java index 15171ae747..9a4727941f 100644 --- a/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalTankBase.java +++ b/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalTankBase.java @@ -90,6 +90,33 @@ public abstract class GT_MetaTileEntity_DigitalTankBase extends GT_MetaTileEntit } } + private static int tierPump(int tier) { + switch (tier) { + case 1: + return 2; + case 2: + return 3; + case 3: + return 3; + case 4: + return 4; + case 5: + return 4; + case 6: + return 5; + case 7: + return 5; + case 8: + return 6; + case 9: + return 7; + case 10: + return 8; + default: + return 0; + } + } + public GT_MetaTileEntity_DigitalTankBase(String aName, int aTier, String aDescription, ITexture[][][] aTextures) { super(aName, aTier, 3, aDescription, aTextures); } @@ -372,7 +399,7 @@ public abstract class GT_MetaTileEntity_DigitalTankBase extends GT_MetaTileEntit if (mOutputFluid && getDrainableStack() != null && (aTick % 20 == 0)) { IFluidHandler tTank = aBaseMetaTileEntity.getITankContainerAtSide(aBaseMetaTileEntity.getFrontFacing()); if (tTank != null) { - FluidStack tDrained = drain(commonSizeCompute(mTier) / 100, false); + FluidStack tDrained = drain(20 * (1 << (3 + 2 * tierPump(mTier))), false); if (tDrained != null) { int tFilledAmount = tTank.fill( ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()), -- cgit