抽水泵
alaindustrial:pump
概览
抽水泵——以 EU/FE 为动力的 LV 机器,用于输送流体。它会寻找世界中的任何流体源(从自己前方 的方块开始,沿流动流体继续),或从相邻储罐抽取流体,将其积累到内部 10 桶容量的储罐中, 并自己将其推出去——到任何相邻的接收储罐。储罐接受任何流体(不仅限于熔岩/水),因此也 可以倒入模组流体——通过胶囊或其他模组的容器。
储罐一次只容纳一种流体:被一种占据时,另一种在排空之前不被接受。禁止混合是有意为之—— 不会意外地把两种流体倒进同一根管道。
主要场景是用管道给地热发电机供熔岩,而不是徒手搬 桶;同时泵也输送水和任何其他流体,为未来的流体链做准备。
能量
泵是纯粹的能量消费者:它接收 EU/FE,不输出任何东西,每抽取一桶消耗 1000 EU/FE。
| 字段 | 数值 |
|---|---|
| 角色 | 带缓存的消费者 |
| 缓存(EU/FE) | 4000——明显高于大多数机器,可一次攒够 4 桶 |
| 最大输入(EU/FE/刻) | 32(低 LV 等级) |
| 最大输出(EU/FE/刻) | n/a(不输出) |
| 每桶 EU/FE | 1000——最耗能的机器之一 |
泵作为普通消费者接入能源网络——能量网络会自己找到它。 能量仅在实际从世界或相邻储罐取走流体的那一刻消耗;手动通过桶倾倒和推入接收槽不耗 EU/FE。
作为低等级机器,泵每刻最多接收 32 EU/FE。在 1000 EU/FE/桶、32 EU/FE/刻限制下,攒够一桶的缓冲约 需 ~32 刻;4000 EU/FE 的缓冲可容纳 4 桶的成本,因此即使在能量断续供应时泵也极少空闲。
按面的能量。 泵在五个工作面上接收 EU/FE;正面在能量上是惰性的(那里没有接口)——与任何 水平机器相同。因此电缆只在五个工作面绘制接管,而正面不绘制。抽取流体是独立的子系统, 它仍然直接读取正面(见抽取),因此正面的能量惰性不改变泵从哪里抽取流体。
加工
泵不使用配方系统:它不加工物品,而是移动流体。一个工作刻内它走三步。
| 步 | 动作 | 条件 |
|---|---|---|
| 0. 桶 | 将输入槽的流体桶倒空入储罐 | 输入槽有熔岩/水桶,储罐准备好接受,输出槽有空位放空桶 |
| 1. 抽取 | 取 1 桶流体入储罐 | 缓存中能量够一桶,储罐有空间且过了搜索尝试的间隔 |
| 2. 供应 | 将储罐中的流体推到相邻接收器 | 储罐中有流体 |
抽取。 泵从正对自己的方块(朝向玩家的那一面)开始寻找流体。如果那里本身就是流体或与 之相连的流动水洼——泵沿其到达最近的源(任何流体)。如果世界中没有流体,则尝试从相邻 储罐取一桶——与已持有相同类型的,空储罐时则取邻居愿意给出的任何类型。世界中搜索源的限制:
半径: 距泵最多 32 格; 访问上限: 单次扫描最多 512 个方块(防止大型泄漏造成的卡顿); 间隔: 搜索尝试之间 1 秒(20 刻)——成功和失败后均如此。
找到的源被以一桶量取入储罐,而世界中的源方块不可逆地消失(被抽干)。流动的非源流体不 被抽取——它只把搜索导向源,源被移除后按原版规则重新散开。如果储罐已持有另一种流体,搜索 甚至不启动——泵不会浪费这一刻。
供应。 泵向所有方向推出流体,除了刚抽取的那个(以免把它推回源),并尽量一次性把整个 储罐交给任何相邻的接收器——例如地热发电机的储罐。
工作时泵会亮起(每个有动作的刻——抽取、供应或倒桶——都会亮)。
物品栏
2×2 网格中的四个槽——用于手动灌装和排空流体。这不是泵的主要工作方式,而是方便的辅助。
| 槽 | 排 | 接受 | 数量 |
|---|---|---|---|
| 灌装输入(0) | 上排 | 任何满的流体容器 | 至一叠 |
| 灌装输出(1) | 上排 | 空容器(仅用于取出) | 至一叠 |
| 排空输入(2) | 下排 | 任何空的流体容器 | 至一叠 |
| 排空输出(3) | 下排 | 装满的容器(仅用于取出) | 至一叠 |
任何容器,不仅是桶()。 槽接受所有能携带流体的东西:原版熔岩桶和水桶、我们的 真空胶囊(任何流体)以及其他模组的容器(它们的单元、油桶、 胶囊)。泵不维护已知物品列表——它通过加载器的标准流体接口询问物品本身,因此其他模组的 容器自动工作,无需我们改代码。
交换严格每次一桶且遵循「全有或全无」:如果储罐不接受整桶(没空间或里面是另一种流体) 或容器无处可放——什么都不会发生,流体和容器都留在原地。这不消耗 EU/FE(手动灌装, 非泵)。
胶囊是模组流体的唯一手动路径:它们没有原版桶,而胶囊接受任何流体。
漏斗和管道只放入输入槽(0 和 2),只从输出槽(1 和 3)取出——输出由机器自己填充。
内部储罐
| 字段 | 数值 |
|---|---|
| 容量 | 10 桶(10 000 mB) |
| 接受 | 任何非空流体,不仅限于熔岩/水 |
| 混合 | 禁止——被一种占据时,另一种在排空前不被接受 |
| 取出 | 允许从任何面 |
一次只一种流体。 储罐一次最多持一种流体。空时——接受任何流体(包括模组的);被一种 占据时——另一种在排空前被拒绝。不可能意外混合——这是储罐本身设计所固有的。
体积单位是毫桶(mB)。 储罐内部一切都以毫桶计算:1 桶 = 1000 mB,储罐容量 = 10 000 mB (即 10 桶)。该值在两个加载器上相同——玩家无论在 Fabric 还是 NeoForge 上玩,看到的都是 完全相同的容量。
保存与迁移。 重登后储罐恢复容量和流体类型——类型存储为完整标识符(例如 minecraft:lava),因此任何流体都能经受重启。旧存档(储罐只知熔岩/水)被正确接续:当存在 无识别键的流体时,它被读作熔岩——最早的泵所知的唯一流体。
与胶囊和其他模组容器的交换
泵是流体交换的完全参与者:其储罐不仅可通过桶槽灌装和排空,还可用我们的胶囊和其他 模组的容器。
胶囊(手动右键)。 空的流体胶囊右键点击泵方块会从储罐中 取走恰好 1 桶流体并变成已装满;装满的胶囊以相同的点击把其桶倒入储罐(如有空间且类型匹配 /为空)。这在方块的任何面、任何手上都有效。交换优先于 GUI:手持胶囊时,右键点击泵会交换 流体而不打开菜单;空手或交换不成功时——打开 GUI。按住 Shift 时游戏绕过方块并直接调用 胶囊交换(因此 shift+胶囊不会打开 GUI——仅交换)。
其他模组的容器和管道。 泵的储罐在任何面上可被其他模组的管道、泵和储罐访问——它们可以 从泵抽取流体并灌入泵,双向均可,无需手动点击。
界面
泵有图形界面,带两个槽(用于桶)和两条指示条。
类型:GUI,两个槽(桶)和两条条: 左侧——储罐中的液位(从下往上增长)。储罐用流体本身的实际材质(其方块的 still 材质带原生 tint)填充,按 16×16 平铺并根据液位裁剪——水看起来像水,熔岩像熔岩。模组 流体自动以其材质绘制:取自原版的流体模型,模组图集中不需要为每种流体准备单独材质。 右侧——能量缓存。 悬停时工具提示显示流体名称 + mB 体积和 EU/FE / 缓存容量。 方块状态:放置时泵「面向玩家」(它用这一面抽取流体),工作时亮起。
方块属性
普通的完整方块:用镐破坏,破坏时不保留电荷(储罐和流体——保留,见内部储罐)。
| 字段 | 数值 |
|---|---|
| 形状 | 完整 16³ 立方体(遮挡体) |
| 硬度 | 3.0 |
| 爆炸抗性 | 6.0 |
| 工具 | 镐 |
| 声音 | 金属 |
| 破坏时保留电荷 | 否 |
声音
运行时(lit),水泵会发出液体被吸入管道的湿润吸吮声 — 循环音效 (模式 A,默认 0.35)。空闲时归于静默()。
水泵与其他模式 A 机器的不同之处:桶的转移是原子性的 — 它在单个刻内完成,而不像粉碎机的研磨 那样横跨多个处理刻。因此 lit(以及循环音效)在最后一次转移后会继续保持 刻(默认 60 刻 = 3 秒)。没有这段保持,指示灯和声音都只会闪现一刻, 玩家根本无法听到水泵工作。在连续抽取时,新的转移会在倒计时结束前重新启动它,因此水泵读起来是 持续运转的,而不会闪烁。
配方
工作台上一个配方:铁外壳、两个桶和电子电路。配方中的两个桶反映方块的本质 —输送流体;电子电路设定机器的低等级。
合成:
进阶
早期 LV 机器——有了稳定的发电机和合成用的电子电路后即可放置。免除了手动处理熔岩桶的麻烦。
等级:LV 供电:来自 LV 源,例如发电机。 用途:以流体方式自动给地热发电机供熔岩,替代手动 桶;为未来的流体链输送水。 需要:合成用的电子电路。
相关内容
地热发电机——泵的熔岩主要消费者。 发电机——泵的典型 LV 供电来源。 组件——合成用的电子电路。 I/O 网络逻辑——方块各面流体供应的工作方式。
合成
有序合成
▶
抽水泵