Cargo Manager(货物管理器)
基本信息
| 属性 | 值 |
|---|---|
| 注册名 | StevesCarts:BlockCargoManager |
| TileEntity | TileEntityCargo(注册名 cargo) |
| 材质 | Material.rock |
| 硬度 | 2.0 |
| 爆炸抗性 | 源码从未调用 setResistance → 无自定义值 |
| GUI ID | 1 |
⚠️ 审计订正
- 原文注册名
StevesCarts:CargoManager错。GameRegistry.registerBlock用的是枚举里的字符串实参"BlockCargoManager"(ModBlocks.java:30、ModBlocks.java:81),正确为StevesCarts:BlockCargoManager。- 原文「硬度 2.5」错。所有方块统一
setHardness(2F)(ModBlocks.java:80),2.5 无出处。- 原文「爆炸抗性 10.0」错。
setResistance全文只在ModBlocks.java:99对STORAGE调用一次,本方块从未调用。- 原文「白名单/黑名单过滤」错。源码无白/黑名单概念,配置项是按槽位的物品筛选。
- 原文「单次转移上限 约 1 组物品」错,无出处。
是否多方块
不是多方块结构。单方块 + TileEntity 容器,通过相邻的 Advanced Detector Rail 与矿车交互。
摆放与交互要求
- 必须紧贴 Advanced Detector Rail(
StevesCarts:BlockAdvDetector)放置 - 矿车通过该轨道时
onMinecartPass找到本方块,把矿车登记进TileEntityManager.setCart()(BlockRailAdvDetector.java:81-95) - 只能与
MinecartModular(模块化矿车)交互,普通矿车直接return - 已登记的矿车不会覆盖(
manager.getCart() == null才赋值)
功能
自带一个 TileEntityManager 物品栏(TileEntityCargo.java:148),按 moveTime 节奏与矿车做双向物品交换:
| 机制 | 说明 | 证据 |
|---|---|---|
toCart[] |
4 个方向各自决定是否向矿车输出(默认全 true) |
TileEntityManager.java:447 |
doReturn[] |
4 个方向各自决定是否从矿车取回(默认全 false) |
TileEntityManager.java:448 |
amount[] |
每方向每次交换的数量 | TileEntityManager.java:450 |
itemSelections |
按槽位筛选允许交换的物品 | TileEntityCargo.java:63、TileEntityCargo.java:376 |
layoutType |
界面布局方案 | TileEntityManager.java:444 |
交互
| 触发 | 行为 |
|---|---|
| 右键 | 打开 GUI(ID 1)配置交换方向 / 数量 / 物品筛选 |
| 矿车经过 | 自动开始/继续物品交换 |
关联条目
- Liquid Manager - 液体版,机制相同
- Cart Assembler - 矿车组装台
- Detector - 检测器
- Distributor - 分流器
- Activator - 激活器
- 模块化矿车 - 本方块唯一可交互的矿车