aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/common/tileentities
diff options
context:
space:
mode:
authormiozune <miozune@gmail.com>2022-11-05 19:40:40 +0900
committerGitHub <noreply@github.com>2022-11-05 10:40:40 +0000
commitacfa3dfed94b0e8c69ab6439593197338701b1c4 (patch)
tree8c8a15ee8ea9874521e7d8f90dfa660c8775f580 /src/main/java/gregtech/common/tileentities
parent38c0fcce22dfa6dccb44ecd688198c72565440ca (diff)
downloadGT5-Unofficial-acfa3dfed94b0e8c69ab6439593197338701b1c4.tar.gz
GT5-Unofficial-acfa3dfed94b0e8c69ab6439593197338701b1c4.tar.bz2
GT5-Unofficial-acfa3dfed94b0e8c69ab6439593197338701b1c4.zip
Fix disassembler not handling container item (#1505)
Diffstat (limited to 'src/main/java/gregtech/common/tileentities')
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java
index 1f9b93a8d2..81e7ece86f 100644
--- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java
+++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java
@@ -386,10 +386,9 @@ public class GT_MetaTileEntity_Disassembler extends GT_MetaTileEntity_BasicMachi
}
}
- // Unification
output[i] = handleUnification(output[i]);
- // Wildcard
output[i] = handleWildcard(output[i]);
+ output[i] = handleContainerItem(output[i]);
}
}
@@ -406,13 +405,21 @@ public class GT_MetaTileEntity_Disassembler extends GT_MetaTileEntity_BasicMachi
}
private static ItemStack handleWildcard(ItemStack stack) {
- if (stack.getItemDamage() == OreDictionary.WILDCARD_VALUE
+ if (stack != null
+ && stack.getItemDamage() == OreDictionary.WILDCARD_VALUE
&& !stack.getItem().isDamageable()) {
stack.setItemDamage(0);
}
return stack;
}
+ private static ItemStack handleContainerItem(ItemStack stack) {
+ if (stack != null && stack.getItem().hasContainerItem(stack)) {
+ return null;
+ }
+ return stack;
+ }
+
private static void handleReplacement(
Set<ItemStack[]> inputsStacks, ItemData data, ItemStack[] output, ItemStack input, int i) {
AtomicReference<Materials> toRpl = new AtomicReference<>();