Backpack Hose
基本信息
| 属性 |
值 |
| 注册名 |
adventurebackpack:backpackHose |
| 类 |
ItemHose (extends ItemAB) |
| 最大堆叠 |
1 |
| 可维修 |
false(setNoRepair) |
| 内部状态 |
NBT tank(0=左, 1=右) + mode(0=抽吸, 1=排放, 2=饮用) |
功能
搭配 Adventure Backpack 流体槽使用的三模流体软管。它通过客户端 NBT 缓存当前绑定 tank 与模式(suck / spill / drink),并在 onUpdate 时根据穿戴中背包的对应槽流体自动同步显示态(流体名 + 液体量)。右键水流块 = 抽水;右键石头等实心块的纵向顶面 = 排放;与牛 / Mooshroom 互动 = 提取牛奶 / 蘑菇煲。
三种模式
| 模式 |
触发器 |
行为 |
| Suck Mode (0) |
右键 - 流体块或 IFluidHandler TileEntity |
把流体从世界抓入背包对应槽(Suck 模式抽入 1000 mB)。地狱禁止对水使用 |
| Spill Mode (1) |
右键 - 流体块;右键实体 TileEntity |
把背包对应槽的流体释放为方块水或 lava;与 IFluidHandler 输出兼容 |
| Drink Mode (2) |
右键 - 任意含 BUCKET 量流体的背包槽 |
调用 FluidEffectRegistry.executeFluidEffectsForFluid(...) 给予对应效果;NBT 中的 tank 与 mode 必须在 NBT 中保留,会在 onEaten 真正喝下时 drain 1 桶 |
使用方式
| 触发 |
行为 |
| 右键点击方块 |
据 mode 切到 suck / spill 行为,针对 IFluidHandler 交互 |
| 快捷栏右键(仅 SUCK/SPILL) |
rayTraceBlocks 后把流体块吸取到背包槽(spill 反向) |
| 装备交互(牛/Mooshroom) |
在 SUCK/SPILL 模式右键牛立即得到 1 桶 milk/mushroomStew |
| 使用 + 持续饮酒 |
在 DRINK 模式 + hold right click 时设定 inUse;onEaten 中根据 NBT 调用对应效果 |
| Wheel 滚轮 / Action 键 |
切换 mode / tank(由 KeyInputEventHandler 拦截) |
数值
| 数值 |
值 |
| 模式种类 |
3 |
| 单次液体传输 |
1000 mB(1 桶) |
| 桶槽容量 |
4000 mB(BASIC_TANK_CAPACITY) |
| 使用动画 |
DRINK 模式 = EnumAction.drink |
集成
- NEI:未集成,但
ItemComponent 中有关于流体合成的手册
- Hunger Overhaul:自动支持"挤奶间隔",在
Entity.Cow 上加盖 tags “Milked”
- 流体系 Mod:通过
FluidRegistry.lookupFluidForBlock 与 ModFluids.milk / melonJuice / mushroomStew 自动交互
相关条目