aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-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<>();