diff --git a/src/main/java/com/simibubi/create/content/logistics/packager/InventorySummary.java b/src/main/java/com/simibubi/create/content/logistics/packager/InventorySummary.java index 25440e5b18..b5b61b02cd 100644 --- a/src/main/java/com/simibubi/create/content/logistics/packager/InventorySummary.java +++ b/src/main/java/com/simibubi/create/content/logistics/packager/InventorySummary.java @@ -92,10 +92,7 @@ public void add(ItemStack stack, int count) { } } - if (stack.getCount() > stack.getMaxStackSize()) - stack = stack.copyWithCount(1); - - BigItemStack newEntry = new BigItemStack(stack, count); + BigItemStack newEntry = new BigItemStack(stack.copyWithCount(1), count); stacks.add(newEntry); } diff --git a/src/main/java/com/simibubi/create/content/logistics/packager/PackagerBlockEntity.java b/src/main/java/com/simibubi/create/content/logistics/packager/PackagerBlockEntity.java index fe44ffd9b3..a779db3896 100644 --- a/src/main/java/com/simibubi/create/content/logistics/packager/PackagerBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/logistics/packager/PackagerBlockEntity.java @@ -208,7 +208,12 @@ public InventorySummary getAvailableItems() { InventorySummary availableItems = new InventorySummary(); IItemHandler targetInv = targetInventory.getInventory(); - if (targetInv == null || targetInv instanceof PackagerItemHandler) { + if (targetInv == null) { + if (this.availableItems == null) + this.availableItems = availableItems; + return this.availableItems; + } + if (targetInv instanceof PackagerItemHandler) { this.availableItems = availableItems; return availableItems; } @@ -224,7 +229,8 @@ public InventorySummary getAvailableItems() { } invVersionTracker.awaitNewVersion(targetInventory.getInventory()); - submitNewArrivals(this.availableItems, availableItems); + if (!level.isClientSide) + submitNewArrivals(this.availableItems, availableItems); this.availableItems = availableItems; return availableItems; }