From 3d6ff79adaff68ad0344797c9d67074478ebe9f9 Mon Sep 17 00:00:00 2001 From: ineternet <33813737+ineternet@users.noreply.github.com> Date: Tue, 9 Jan 2018 18:02:36 +0100 Subject: [PATCH] Fixed issue with pattern overwriting (#1610) * Fixed issue with pattern overwriting Pattern overwriting if the blank pattern (top slot in the pattern slots) slot was empty. Fixed this by only considering a recipe invalid if there are *absolutely no* patterns available, meaning none in top and none in bottom. * Fixed a line typo, sorry * fixed patternAvailable, returned opposite * Updated name to isPatternAvailable * Added newest change to the changelog Second line in the 1.5.32 version added. --- CHANGELOG.md | 1 + .../apiimpl/network/node/NetworkNodeGrid.java | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2bb6a24d2..4ced1d9b2 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,7 @@ ### 1.5.32 - Added Spanish translation (Samuelrock) +- Fixed issue where the Pattern Grid can only overwrite patterns when blank ones are present (ineternet) ### 1.5.31 - Improved the "cannot craft! loop in processing..." error message (raoulvdberge) diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeGrid.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeGrid.java index 5a0734834..9d4ab9133 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeGrid.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeGrid.java @@ -491,9 +491,13 @@ public class NetworkNodeGrid extends NetworkNode implements IGrid { patterns.setStackInSlot(1, pattern); } } + + private boolean isPatternAvailable() { + return !(patterns.getStackInSlot(0).isEmpty() && patterns.getStackInSlot(1).isEmpty()); + } public boolean canCreatePattern() { - if (patterns.getStackInSlot(0).isEmpty()) { + if (!isPatternAvailable()) { return false; } @@ -515,7 +519,7 @@ public class NetworkNodeGrid extends NetworkNode implements IGrid { return inputsFilled > 0 && outputsFilled > 0; } else { - return !result.getStackInSlot(0).isEmpty(); + return isPatternAvailable(); } }