diff options
author | Jason Mitchell <mitchej@gmail.com> | 2018-09-04 18:08:22 -0700 |
---|---|---|
committer | Jason Mitchell <mitchej@gmail.com> | 2018-09-04 18:08:22 -0700 |
commit | 9cd17d07c543a14a80672fa709c419f7c580a344 (patch) | |
tree | 11351ed8e8ff50d06a985956ecb5f90a75842de9 /src/main/java/gregtech/api/metatileentity | |
parent | fad72d1c68001be4cac656309a18436dadb862bb (diff) | |
download | GT5-Unofficial-9cd17d07c543a14a80672fa709c419f7c580a344.tar.gz GT5-Unofficial-9cd17d07c543a14a80672fa709c419f7c580a344.tar.bz2 GT5-Unofficial-9cd17d07c543a14a80672fa709c419f7c580a344.zip |
Fix weirdness if only one of the gt6 pipes/cables are enabled
Diffstat (limited to 'src/main/java/gregtech/api/metatileentity')
4 files changed, 27 insertions, 6 deletions
diff --git a/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java b/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java index c04dc9d523..df603de17b 100644 --- a/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java +++ b/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java @@ -763,7 +763,9 @@ public abstract class MetaPipeEntity implements IMetaTileEntity, IConnectable { final byte tSide = GT_Utility.getOppositeSide(aSide);
final IGregTechTileEntity baseMetaTile = getBaseMetaTileEntity();
- final GT_CoverBehavior coverBehavior = getBaseMetaTileEntity().getCoverBehaviorAtSide(aSide);
+ if (baseMetaTile == null) return 0;
+
+ final GT_CoverBehavior coverBehavior = baseMetaTile.getCoverBehaviorAtSide(aSide);
final int coverId = baseMetaTile.getCoverIDAtSide(aSide),
coverData = baseMetaTile.getCoverDataAtSide(aSide);
@@ -786,8 +788,8 @@ public abstract class MetaPipeEntity implements IMetaTileEntity, IConnectable { }
return 1;
}
- else if(((GT_Mod.gregtechproxy.gt6Cable || GT_Mod.gregtechproxy.gt6Pipe) && baseMetaTile.getAirAtSide(aSide)) || canConnect(aSide, tTileEntity)) {
- // Allow open connections to Air, so that it'll connect to the next block placed down next to it
+ else if((getGT6StyleConnection() && baseMetaTile.getAirAtSide(aSide)) || canConnect(aSide, tTileEntity)) {
+ // Allow open connections to Air, if the GT6 style pipe/cables are enabled, so that it'll connect to the next block placed down next to it
connectAtSide(aSide);
return 1;
}
@@ -800,12 +802,11 @@ public abstract class MetaPipeEntity implements IMetaTileEntity, IConnectable { return 0;
}
-
- public void checkConnections() {
+ protected void checkConnections() {
// Verify connections around us. If GT6 style cables are not enabled then revert to old behavior and try
// connecting to everything around us
for (byte aSide = 0; aSide < 6; aSide++) {
- if ((!GT_Mod.gregtechproxy.gt6Cable || isConnectedAtSide(aSide)) && connect(aSide) == 0) {
+ if ((!getGT6StyleConnection() || isConnectedAtSide(aSide)) && connect(aSide) == 0) {
disconnect(aSide);
}
}
@@ -836,4 +837,5 @@ public abstract class MetaPipeEntity implements IMetaTileEntity, IConnectable { public boolean letsOut(GT_CoverBehavior coverBehavior, byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity) { return false; }
public boolean canConnect(byte aSide, TileEntity tTileEntity) { return false; }
+ public boolean getGT6StyleConnection() { return false; }
}
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 e59be8921f..56849e1e73 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 @@ -380,6 +380,13 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile }
@Override
+ public boolean getGT6StyleConnection() {
+ // Yes if GT6 Cables are enabled
+ return GT_Mod.gregtechproxy.gt6Cable;
+ }
+
+
+ @Override
public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
return false;
}
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 b70697556d..e7a3dedb61 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 @@ -407,6 +407,12 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity { }
@Override
+ public boolean getGT6StyleConnection() {
+ // Yes if GT6 pipes are enabled
+ return GT_Mod.gregtechproxy.gt6Pipe;
+ }
+
+ @Override
public void doSound(byte aIndex, double aX, double aY, double aZ) {
super.doSound(aIndex, aX, aY, aZ);
if (aIndex == 9) {
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 7cf91b6c86..bba105c95f 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 @@ -237,6 +237,12 @@ public class GT_MetaPipeEntity_Item extends MetaPipeEntity implements IMetaTileE return connectable; } + @Override + public boolean getGT6StyleConnection() { + // Yes if GT6 pipes are enabled + return GT_Mod.gregtechproxy.gt6Pipe; + } + @Override public boolean incrementTransferCounter(int aIncrement) { |