aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/common/covers
diff options
context:
space:
mode:
authorPrometheus0000 <prometheus0000000@gmail.com>2021-03-03 08:29:38 -0500
committerGitHub <noreply@github.com>2021-03-03 08:29:38 -0500
commit617f0c768c5bb7f2b16806e36ea80303dca261b2 (patch)
tree6c19d551fc9d534473f92166f49bc85f11dba558 /src/main/java/gregtech/common/covers
parent3a027e939e2c18e165b2f1405637c92f25736582 (diff)
parent437d41dfd788584d0d9afab8565a5de96957cd34 (diff)
downloadGT5-Unofficial-617f0c768c5bb7f2b16806e36ea80303dca261b2.tar.gz
GT5-Unofficial-617f0c768c5bb7f2b16806e36ea80303dca261b2.tar.bz2
GT5-Unofficial-617f0c768c5bb7f2b16806e36ea80303dca261b2.zip
Merge pull request #24 from GTNewHorizons/experimental
update
Diffstat (limited to 'src/main/java/gregtech/common/covers')
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_FluidRegulator.java11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_FluidRegulator.java b/src/main/java/gregtech/common/covers/GT_Cover_FluidRegulator.java
index f8784d570f..4ddc54e2a1 100644
--- a/src/main/java/gregtech/common/covers/GT_Cover_FluidRegulator.java
+++ b/src/main/java/gregtech/common/covers/GT_Cover_FluidRegulator.java
@@ -18,6 +18,7 @@ import net.minecraftforge.fluids.IFluidHandler;
public class GT_Cover_FluidRegulator extends GT_CoverBehavior {
public final int mTransferRate;
+ private boolean allowFluid = false;
public GT_Cover_FluidRegulator(int aTransferRate) {
this.mTransferRate = aTransferRate;
@@ -36,15 +37,16 @@ public class GT_Cover_FluidRegulator extends GT_CoverBehavior {
if (aCoverVariable > 0) {
tTank2 = aTileEntity.getITankContainerAtSide(aSide);
tTank1 = (IFluidHandler) aTileEntity;
- directionFrom = ForgeDirection.UNKNOWN;
+ directionFrom = ForgeDirection.getOrientation(aSide);
directionTo = ForgeDirection.getOrientation(aSide).getOpposite();
} else {
tTank1 = aTileEntity.getITankContainerAtSide(aSide);
tTank2 = (IFluidHandler) aTileEntity;
directionFrom = ForgeDirection.getOrientation(aSide).getOpposite();
- directionTo = ForgeDirection.UNKNOWN;
+ directionTo = ForgeDirection.getOrientation(aSide);
}
if (tTank1 != null && tTank2 != null) {
+ allowFluid = true;
FluidStack tLiquid = tTank1.drain(directionFrom, Math.abs(aCoverVariable), false);
if (tLiquid != null) {
tLiquid = tLiquid.copy();
@@ -53,6 +55,7 @@ public class GT_Cover_FluidRegulator extends GT_CoverBehavior {
tTank2.fill(directionTo, tTank1.drain(directionFrom, tLiquid.amount, true), true);
}
}
+ allowFluid = false;
}
}
return aCoverVariable;
@@ -120,11 +123,11 @@ public class GT_Cover_FluidRegulator extends GT_CoverBehavior {
}
public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity) {
- return false;
+ return allowFluid;
}
public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity) {
- return false;
+ return allowFluid;
}
public boolean alwaysLookConnected(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity) {