diff options
author | Antifluxfield <lyj_299792458@163.com> | 2017-12-21 14:58:34 -0600 |
---|---|---|
committer | Blood-Asp <bloodasphendrik@gmail.com> | 2017-12-21 21:58:34 +0100 |
commit | f73c0fd7ef4c758ac677b521399fbcef8909d40f (patch) | |
tree | c249a6b9087d9e73bfba38a01ab7556c57d1a9ab /src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java | |
parent | a40750b3b8c6fca9c8e66bfbf4c92357cb57deda (diff) | |
download | GT5-Unofficial-f73c0fd7ef4c758ac677b521399fbcef8909d40f.tar.gz GT5-Unofficial-f73c0fd7ef4c758ac677b521399fbcef8909d40f.tar.bz2 GT5-Unofficial-f73c0fd7ef4c758ac677b521399fbcef8909d40f.zip |
Fix pipe behaviors (#1329)
* Try to fix #1301
* Fix pipe behavior with covers at side
* Fix item pipe & cable behavior
* Update
* Update 2
* Based on @mitchej123 's work
Diffstat (limited to 'src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java')
-rw-r--r-- | src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java b/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java index 9e4a79bee5..7058b167bb 100644 --- a/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java +++ b/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java @@ -165,7 +165,7 @@ public abstract class MetaPipeEntity implements IMetaTileEntity, IConnectable { if (aSide < 6 && mBaseMetaTileEntity.getCoverIDAtSide(aSide) > 0) { tCovered = true; } - if((mConnections & (byte)(Math.pow(2, aSide))) != 0){ + if(isConnectedAtSide(aSide)){ tCovered = true; } //System.out.println("Cover: "+mBaseMetaTileEntity.getCoverIDAtSide(aSide)); @@ -711,7 +711,7 @@ public abstract class MetaPipeEntity implements IMetaTileEntity, IConnectable { byte tSide = GT_Utility.getOppositeSide(aSide); IGregTechTileEntity tTileEntity = getBaseMetaTileEntity().getIGregTechTileEntityAtSide(aSide); IMetaTileEntity tPipe = tTileEntity instanceof IGregTechTileEntity ? ((IGregTechTileEntity) tTileEntity).getMetaTileEntity() : null; - if (this.getClass().isInstance(tPipe) && (((MetaPipeEntity) tPipe).mConnections & (1 << tSide)) == 0) + if (this.getClass().isInstance(tPipe) && !((MetaPipeEntity) tPipe).isConnectedAtSide(tSide)) ((MetaPipeEntity) tPipe).connect(tSide); return 1; } @@ -726,4 +726,9 @@ public abstract class MetaPipeEntity implements IMetaTileEntity, IConnectable { if (this.getClass().isInstance(tPipe) && (((MetaPipeEntity) tPipe).mConnections & (1 << tSide)) != 0) ((MetaPipeEntity) tPipe).disconnect(tSide); } + + @Override + public boolean isConnectedAtSide(int aSide) { + return (mConnections & (1 << aSide)) != 0; + } }
\ No newline at end of file |