diff options
author | Martin Robertz <dream-master@gmx.net> | 2017-12-19 17:09:33 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-12-19 17:09:33 +0100 |
commit | 1c44725f64bb2fb9cbea1b6a3ef4024999a0301f (patch) | |
tree | 8bb2f668885ad24ceace227b93737cb043553d86 /src/main/java/gregtech/api/metatileentity/implementations | |
parent | bb8b175d6b27c21a095e13c776c814856c23a3d6 (diff) | |
parent | 73ba61d809115bdedacedba994cea8c75f72c4a9 (diff) | |
download | GT5-Unofficial-1c44725f64bb2fb9cbea1b6a3ef4024999a0301f.tar.gz GT5-Unofficial-1c44725f64bb2fb9cbea1b6a3ef4024999a0301f.tar.bz2 GT5-Unofficial-1c44725f64bb2fb9cbea1b6a3ef4024999a0301f.zip |
Merge pull request #63 from Antifluxfield/GTNH-GT6_cable_fix
Fix cable connection
Diffstat (limited to 'src/main/java/gregtech/api/metatileentity/implementations')
3 files changed, 19 insertions, 10 deletions
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java index 2766a9e52f..1b720c9503 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java @@ -361,9 +361,14 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile rConnect = 1;
}
}
- } else if (getBaseMetaTileEntity().getOffsetX(aSide, 1) >> 4 != getBaseMetaTileEntity().getXCoord() >> 4
- || getBaseMetaTileEntity().getOffsetZ(aSide, 1) >> 4 != getBaseMetaTileEntity().getZCoord() >> 4) { // if chunk unloaded
- rConnect = -1;
+ }
+ if (rConnect == 0) {
+ if (!getBaseMetaTileEntity().getWorld().getChunkProvider().chunkExists(getBaseMetaTileEntity().getOffsetX(aSide, 1) >> 4, getBaseMetaTileEntity().getOffsetZ(aSide, 1) >> 4)) { // if chunk unloaded
+ rConnect = -1;
+ }
+ if (tTileEntity instanceof IEnergyConnected && !((IEnergyConnected) tTileEntity).energyStateReady()) { //Energy state not ready
+ rConnect = -1;
+ }
}
if (rConnect > 0) {
super.connect(aSide);
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 f330aa5eef..e3e9531d97 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 @@ -392,10 +392,12 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity { }
}
}
- } else if (getBaseMetaTileEntity().getOffsetX(aSide, 1) >> 4 != getBaseMetaTileEntity().getXCoord() >> 4
- || getBaseMetaTileEntity().getOffsetZ(aSide, 1) >> 4 != getBaseMetaTileEntity().getZCoord() >> 4) { // if chunk unloaded
- rConnect = -1;
}
+ if (rConnect == 0) {
+ if (!getBaseMetaTileEntity().getWorld().getChunkProvider().chunkExists(getBaseMetaTileEntity().getOffsetX(aSide, 1) >> 4, getBaseMetaTileEntity().getOffsetZ(aSide, 1) >> 4)) { // if chunk unloaded
+ rConnect = -1;
+ }
+ }
if (rConnect > 0) {
if (GT_Mod.gregtechproxy.gt6Pipe && tFluidPipe != null) {
if ((mDisableInput & (1 << aSide)) == 0 || (tFluidPipe.mDisableInput & (1 << tSide)) == 0) {
@@ -600,7 +602,7 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity { }
public boolean isInputDisabledAtSide(int aSide) {
- return (mDisableInput & (1 << aSide)) != 0;//... if not zero then it is
+ return (mDisableInput & (1 << aSide)) != 0;
}
@Override
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java index 9ce470859b..f1ac1252df 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java @@ -258,10 +258,12 @@ public class GT_MetaPipeEntity_Item extends MetaPipeEntity implements IMetaTileE } } } - } else if (getBaseMetaTileEntity().getOffsetX(aSide, 1) >> 4 != getBaseMetaTileEntity().getXCoord() >> 4 - || getBaseMetaTileEntity().getOffsetZ(aSide, 1) >> 4 != getBaseMetaTileEntity().getZCoord() >> 4) { // if chunk unloaded - rConnect = -1; } + if (rConnect == 0) { + if (!getBaseMetaTileEntity().getWorld().getChunkProvider().chunkExists(getBaseMetaTileEntity().getOffsetX(aSide, 1) >> 4, getBaseMetaTileEntity().getOffsetZ(aSide, 1) >> 4)) { // if chunk unloaded + rConnect = -1; + } + } if (rConnect > 0) { super.connect(aSide); } |