From b616f99d9b8267000f5b98c08e40c60e34a4855d Mon Sep 17 00:00:00 2001 From: TropheusJ Date: Thu, 3 Aug 2023 16:07:44 -0400 Subject: [PATCH] fix creative crates on contraptions crashing --- .../logistics/crate/BottomlessItemHandler.java | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/simibubi/create/content/logistics/crate/BottomlessItemHandler.java b/src/main/java/com/simibubi/create/content/logistics/crate/BottomlessItemHandler.java index a4bed3bdf9..9deec01b08 100644 --- a/src/main/java/com/simibubi/create/content/logistics/crate/BottomlessItemHandler.java +++ b/src/main/java/com/simibubi/create/content/logistics/crate/BottomlessItemHandler.java @@ -40,10 +40,14 @@ public long extract(ItemVariant resource, long maxAmount, TransactionContext tra return 0; } + protected ItemStack getStack() { + ItemStack stack = suppliedItemStack.get(); + return stack == null || stack.isEmpty() ? ItemStack.EMPTY : stack; + } + @Override public boolean isResourceBlank() { - ItemStack stack = suppliedItemStack.get(); - return stack == null || stack.isEmpty(); + return getStack().isEmpty(); } @Override @@ -63,6 +67,16 @@ public long getCapacity() { // avoid the slot list + @Override + public ItemStack getStackInSlot(int slot) { + return getStack(); + } + + @Override + public ItemVariant getVariantInSlot(int slot) { + return getResource(); + } + @Override public Iterator> iterator() { return SingleSlotStorage.super.iterator(); // singleton iterator on this