Fixed Wireless Transmitter crashing when it is transmitting to a removed dimension, fixes #285

This commit is contained in:
Raoul Van den Berge
2016-08-23 20:12:43 +02:00
parent 2ed4e39256
commit 7ea1e581b7
2 changed files with 14 additions and 9 deletions

View File

@@ -73,17 +73,21 @@ public class NetworkNodeGraph implements INetworkNodeGraph {
if (transmitter.canTransmit()) {
if (!transmitter.isSameDimension()) {
NetworkNodeGraph dimensionGraph = new NetworkNodeGraph(controller) {
@Override
public World getWorld() {
return DimensionManager.getWorld(transmitter.getReceiverDimension());
}
};
final World dimensionWorld = DimensionManager.getWorld(transmitter.getReceiverDimension());
dimensionGraph.rebuild(transmitter.getReceiver(), false);
if (dimensionWorld != null) {
NetworkNodeGraph dimensionGraph = new NetworkNodeGraph(controller) {
@Override
public World getWorld() {
return dimensionWorld;
}
};
newNodes.addAll(dimensionGraph.all());
newNodeHashes.addAll(dimensionGraph.allHashes());
dimensionGraph.rebuild(transmitter.getReceiver(), false);
newNodes.addAll(dimensionGraph.all());
newNodeHashes.addAll(dimensionGraph.allHashes());
}
} else {
BlockPos receiver = transmitter.getReceiver();