From fb95d566dec449cfe751d8bd8be802ce97b19384 Mon Sep 17 00:00:00 2001 From: Darkere Date: Mon, 22 Nov 2021 18:50:37 +0100 Subject: [PATCH] fix relay fixes #3138 --- .../refinedstorage/api/network/node/INetworkNode.java | 9 ++++++++- .../refinedstorage/apiimpl/network/node/NetworkNode.java | 2 +- .../apiimpl/network/node/RelayNetworkNode.java | 5 +++++ 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/refinedmods/refinedstorage/api/network/node/INetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/api/network/node/INetworkNode.java index bf8db471b..1ac168a88 100644 --- a/src/main/java/com/refinedmods/refinedstorage/api/network/node/INetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/api/network/node/INetworkNode.java @@ -96,11 +96,18 @@ public interface INetworkNode { * @param direction the direction * @return whether a network signal can be conducted in the given direction. */ - default boolean canConduct(Direction direction) { return true; } + /** + * @param direction the direction + * @return whether the network node can receiver network connections from this side + */ + default boolean canReceive(Direction direction) { + return canConduct(direction); + } + /** * @param owner the owner */ diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/NetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/NetworkNode.java index 19e7295d6..3aae03cba 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/NetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/NetworkNode.java @@ -238,7 +238,7 @@ public abstract class NetworkNode implements INetworkNode, INetworkNodeVisitor { if (oppositeNode == null) { continue; } - if (canConduct(facing) && oppositeNode.canConduct(facing.getOpposite())) { + if (canConduct(facing) && oppositeNode.canReceive(facing.getOpposite())) { operator.apply(world, pos.offset(facing), facing.getOpposite()); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/RelayNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/RelayNetworkNode.java index 866616dd8..b5bc06168 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/RelayNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/RelayNetworkNode.java @@ -41,6 +41,11 @@ public class RelayNetworkNode extends NetworkNode { return canUpdate(); } + @Override + public boolean canReceive(Direction direction) { + return true; + } + @Override public boolean shouldRebuildGraphOnChange() { return true;