diff --git a/src/main/java/storagecraft/tile/TileCable.java b/src/main/java/storagecraft/tile/TileCable.java index bc27858b2..3894734ef 100644 --- a/src/main/java/storagecraft/tile/TileCable.java +++ b/src/main/java/storagecraft/tile/TileCable.java @@ -33,6 +33,14 @@ public class TileCable extends TileBase { return worldObj.getBlockMetadata(xCoord, yCoord, zCoord) == 1; } + public boolean isActive() { + if (isSensitiveCable()) { + return !isPowered(); + } + + return true; + } + public void addMachines(List visited, List machines, TileController controller) { for (Vec3 visitedBlock : visited) { if (visitedBlock.xCoord == xCoord && visitedBlock.yCoord == yCoord && visitedBlock.zCoord == zCoord) { @@ -68,7 +76,7 @@ public class TileCable extends TileBase { } else if (tile instanceof TileCable) { TileCable cable = (TileCable) tile; - if (!cable.isSensitiveCable() || (cable.isSensitiveCable() && !cable.isPowered())) { + if (cable.isActive()) { ((TileCable) tile).addMachines(visited, machines, controller); } } else if (tile instanceof TileController && (x != controller.xCoord || y != controller.yCoord || z != controller.zCoord)) { diff --git a/src/main/java/storagecraft/tile/TileController.java b/src/main/java/storagecraft/tile/TileController.java index a1af034b7..021eabb55 100644 --- a/src/main/java/storagecraft/tile/TileController.java +++ b/src/main/java/storagecraft/tile/TileController.java @@ -51,7 +51,11 @@ public class TileController extends TileBase implements IEnergyReceiver, INetwor TileEntity tile = worldObj.getTileEntity(xCoord + dir.offsetX, yCoord + dir.offsetY, zCoord + dir.offsetZ); if (tile instanceof TileCable) { - ((TileCable) tile).addMachines(visitedCables, newMachines, this); + TileCable cable = (TileCable) tile; + + if (cable.isActive()) { + cable.addMachines(visitedCables, newMachines, this); + } } }