public class DemoBlockEntity extends BlockEntity implements ImplementedInventory, SidedInventory { [...] @Override public int[] getInvAvailableSlots(Direction side) { // Just return an array of all slots return IntStream.of(getItems().size()).toArray(); } @Override public boolean canInsert(int slot, ItemStack stack, Direction direction) { return direction != Direction.UP; } @Override public boolean canExtract(int slot, ItemStack stack, Direction direction) { return true; } }