diff --git a/src/main/java/com/glodblock/github/nei/NEIUtils.java b/src/main/java/com/glodblock/github/nei/NEIUtils.java index 8ce8931c..dbcd6144 100644 --- a/src/main/java/com/glodblock/github/nei/NEIUtils.java +++ b/src/main/java/com/glodblock/github/nei/NEIUtils.java @@ -45,6 +45,8 @@ public class NEIUtils { int upper = 0; for (OrderStack orderStack : list) { if (orderStack != null && orderStack.getStack() != null) { + if (orderStack.getStack() instanceof ItemStack && ((ItemStack) orderStack.getStack()).stackSize == 0) + continue; map.put(orderStack.getIndex(), orderStack.getStack()); upper = Math.max(upper, orderStack.getIndex()); } diff --git a/src/main/java/com/glodblock/github/network/CPacketTransferRecipe.java b/src/main/java/com/glodblock/github/network/CPacketTransferRecipe.java index 56259662..f49a08b7 100644 --- a/src/main/java/com/glodblock/github/network/CPacketTransferRecipe.java +++ b/src/main/java/com/glodblock/github/network/CPacketTransferRecipe.java @@ -94,12 +94,14 @@ public class CPacketTransferRecipe implements IMessage { outputSlot.setInventorySlotContents(i, null); } - if (combine) { - message.inputs = NEIUtils.compress(message.inputs); - message.outputs = NEIUtils.compress(message.outputs); + if (!message.isCraft) { + if (combine) { + message.inputs = NEIUtils.compress(message.inputs); + message.outputs = NEIUtils.compress(message.outputs); + } + message.inputs = NEIUtils.clearNull(message.inputs); + message.outputs = NEIUtils.clearNull(message.outputs); } - message.inputs = NEIUtils.clearNull(message.inputs); - message.outputs = NEIUtils.clearNull(message.outputs); for (OrderStack stack : message.inputs) { if (stack != null) {