diff --git a/src/main/java/com/simibubi/create/content/logistics/funnel/FunnelBlock.java b/src/main/java/com/simibubi/create/content/logistics/funnel/FunnelBlock.java index ae5ff78b2c..4bd8a955f4 100644 --- a/src/main/java/com/simibubi/create/content/logistics/funnel/FunnelBlock.java +++ b/src/main/java/com/simibubi/create/content/logistics/funnel/FunnelBlock.java @@ -6,6 +6,8 @@ import com.simibubi.create.content.logistics.box.PackageEntity; import com.simibubi.create.foundation.advancement.AdvancementBehaviour; import com.simibubi.create.foundation.block.ProperWaterloggedBlock; +import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour; +import com.simibubi.create.foundation.blockEntity.behaviour.filtering.FilteringBehaviour; import com.simibubi.create.foundation.item.ItemHelper; import net.createmod.catnip.math.VecHelper; @@ -133,7 +135,8 @@ public void entityInside(BlockState state, Level worldIn, BlockPos pos, Entity e if (projectedDiff < 0 == (direction.getAxisDirection() == AxisDirection.POSITIVE)) return; float yOffset = direction == Direction.UP ? 0.25f : direction == Direction.DOWN ? -0.5f : -0.5f; - if (!PackageEntity.centerPackage(entityIn, openPos.add(0, yOffset, 0))) + FilteringBehaviour filter = BlockEntityBehaviour.get(worldIn, pos, FilteringBehaviour.TYPE); + if (filter.test(stack) && !PackageEntity.centerPackage(entityIn, openPos.add(0, yOffset, 0))) return; ItemStack remainder = tryInsert(worldIn, pos, stack, false);