分拣漏斗

分拣漏斗

一个按类别将物品分拣到三个输出口(前方/左方/右方)的漏斗,使用可制作的、基于物品标签印记的过滤卡。

技术

分类漏斗

一个 Fabric 模组,添加了分类漏斗——一种漏斗变种,能按类别自动将物品分配到三个输出口(前方、左方、右方),而不是像原版漏斗那样只向前推送所有物品。

功能说明

分类漏斗有三个输出方向,而不是一个。每个方向都可以分配一个类别——食物、矿石、工具、建筑方块等——这样物品经过时,会自动被路由到匹配的输出口。食物走一条路,矿石走另一条,其他物品要么等待匹配,要么从未配置的方向漏出,就像普通原版漏斗一样。

这取代了通常用于分类存储系统、农场或自动化基地所需的比较器加过滤器的复杂装置,变成一个带有可视化世界内配置的单一方块。

工作原理

过滤卡。空白过滤卡是一种可合成的物品(纸 + 铁粒)。在合成格中将空白卡与示例物品组合,即可为其打上该物品的类别印记——与面包组合得到食物卡,与铁矿石组合得到矿石卡,以此类推。配置是在合成格中物理进行的,而不是通过菜单。

路由。将已印记的卡片放入漏斗的三个槽位中(右键点击方块即可访问,与原版漏斗相同)——每个槽位分别对应前方、左方和右方,相对于漏斗面向的方向。当物品到达时,漏斗会按照前方 → 左方 → 右方的顺序对照每张已配置的卡片检查它们,并将第一个匹配的物品推出。槽位顺序就是优先级顺序,因此它也兼作配置界面。如果某个方向的卡片不匹配,或其目标容器已满,漏斗会尝试下一个匹配的方向。如果没有匹配项且前方槽位没有卡片,则前方作为通配/溢出输出——未配置的漏斗行为与原版漏斗完全一致。

类别是物品标签,而不是自定义列表——漏斗检查c:foods、c:ores、c:tools、c:ingots、c:gems、minecraft:logs以及内置的building_blocks标签(一个由石头/砖块/玻璃/混凝土/木板/羊毛等组成的复合标签)。由于这些是普通的数据包可覆盖标签,模组物品只要正常打上标签就会被自动正确分类,服务器管理员也可以扩展或重新映射类别,而无需修改任何代码。

放置。与原版漏斗不同,分类漏斗只能面向四个水平方向之一放置(不能朝下)——前/左/右需要有水平方向才能明确定义。它仍然会从正上方吸取物品,与原版相同。

合成

  • 过滤卡:1 纸 + 1 铁粒 → 4 张空白卡
  • 分类漏斗:1 漏斗 + 1 比较器 → 1 个分类漏斗

配置

有关配置说明,请参阅与您使用的 IDE 相关的Fabric 文档页面。

许可证

此模板以 CC0 许可证发布。欢迎从中学习并将其融入您自己的项目中。