diff options
author | Technus <daniel112092@gmail.com> | 2018-01-07 11:11:43 +0100 |
---|---|---|
committer | Technus <daniel112092@gmail.com> | 2018-01-07 11:11:43 +0100 |
commit | fcb663754350649e9ce01769f54f850a2c6d262e (patch) | |
tree | e6838eee569ec196b1dd593ccf9f323dc94293e4 /src/main/java | |
parent | 6c26ff264579cdb850e4d90a4170dadca42ed387 (diff) | |
download | GT5-Unofficial-fcb663754350649e9ce01769f54f850a2c6d262e.tar.gz GT5-Unofficial-fcb663754350649e9ce01769f54f850a2c6d262e.tar.bz2 GT5-Unofficial-fcb663754350649e9ce01769f54f850a2c6d262e.zip |
Fix behaviour of disconnected fluid pipes
Diffstat (limited to 'src/main/java')
-rw-r--r-- | src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java | 2 | ||||
-rw-r--r-- | src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java | 25 |
2 files changed, 26 insertions, 1 deletions
diff --git a/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java b/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java index 5f1d7cbd44..1df2929071 100644 --- a/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java +++ b/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java @@ -739,7 +739,7 @@ public abstract class MetaPipeEntity implements IMetaTileEntity, IConnectable { mConnections |= (1 << aSide);
byte tSide = GT_Utility.getOppositeSide(aSide);
IGregTechTileEntity tTileEntity = getBaseMetaTileEntity().getIGregTechTileEntityAtSide(aSide);
- IMetaTileEntity tPipe = tTileEntity instanceof IGregTechTileEntity ? ((IGregTechTileEntity) tTileEntity).getMetaTileEntity() : null;
+ IMetaTileEntity tPipe = tTileEntity != null ? tTileEntity.getMetaTileEntity() : null;
if (this.getClass().isInstance(tPipe) && !((MetaPipeEntity) tPipe).isConnectedAtSide(tSide))
((MetaPipeEntity) tPipe).connect(tSide);
return 1;
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java index eb403aa5f0..9100daa8d2 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java @@ -649,4 +649,29 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity { if (inputAABB.intersectsWith(aabb)) outputAABB.add(aabb);
}
}
+
+ @Override
+ public FluidStack drain(ForgeDirection aSide, int maxDrain, boolean doDrain) {
+ if(isConnectedAtSide(aSide.ordinal()) || aSide==ForgeDirection.UNKNOWN)
+ return super.drain(aSide, maxDrain, doDrain);
+ return null;
+ }
+
+ @Override
+ public FluidStack drain(ForgeDirection aSide, FluidStack aFluid, boolean doDrain) {
+ if(isConnectedAtSide(aSide.ordinal()) || aSide==ForgeDirection.UNKNOWN)
+ return super.drain(aSide, aFluid, doDrain);
+ return null;
+ }
+
+ //Stub method?
+ //@Override
+ //public int fill(FluidStack resource, boolean doFill) {}
+
+ @Override
+ public int fill(ForgeDirection aSide, FluidStack aFluid, boolean doFill) {
+ if(isConnectedAtSide(aSide.ordinal()) || aSide==ForgeDirection.UNKNOWN)
+ return super.fill(aSide, aFluid, doFill);
+ return 0;
+ }
}
|