From d78618d9507108082eb16d439e508f733ad97e0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Szepesi?= <2dcube01@gmail.com> Date: Sun, 23 Feb 2025 05:30:19 +0100 Subject: [PATCH] Read NBT tags `combine` and `beSubstitute` from `ItemStack` when converting them to `FluidPattern` (#268) --- .../client/gui/container/base/FCContainerEncodeTerminal.java | 1 + .../java/com/glodblock/github/util/FluidPatternDetails.java | 3 +++ 2 files changed, 4 insertions(+) diff --git a/src/main/java/com/glodblock/github/client/gui/container/base/FCContainerEncodeTerminal.java b/src/main/java/com/glodblock/github/client/gui/container/base/FCContainerEncodeTerminal.java index 51e5dadb9..727b0c691 100644 --- a/src/main/java/com/glodblock/github/client/gui/container/base/FCContainerEncodeTerminal.java +++ b/src/main/java/com/glodblock/github/client/gui/container/base/FCContainerEncodeTerminal.java @@ -271,6 +271,7 @@ protected void encodeFluidPattern() { pattern.setInputs(collectInventory(this.craftingSlots)); pattern.setOutputs(collectInventory(this.outputSlots)); pattern.setCanBeSubstitute(this.beSubstitute ? 1 : 0); + pattern.setCombine(this.combine ? 1 : 0); patternSlotOUT.putStack(stampAuthor(pattern.writeToStack())); } diff --git a/src/main/java/com/glodblock/github/util/FluidPatternDetails.java b/src/main/java/com/glodblock/github/util/FluidPatternDetails.java index cc7733742..ad8da6d50 100644 --- a/src/main/java/com/glodblock/github/util/FluidPatternDetails.java +++ b/src/main/java/com/glodblock/github/util/FluidPatternDetails.java @@ -187,6 +187,9 @@ public boolean readFromStack() { return false; } NBTTagCompound tag = Objects.requireNonNull(patternStack.getTagCompound()); + setCanBeSubstitute(tag.getBoolean("beSubstitute") ? 1 : 0); + setCombine(tag.getInteger("combine")); + // may be possible to enter a partially-correct state if setInputs succeeds but setOutputs failed // but outside code should treat it as completely incorrect and not attempt to make calls return setInputs(readStackArray(tag.getTagList("in", Constants.NBT.TAG_COMPOUND)))