Cable Cluster(集线器)
基本信息
| 属性 | 值 |
|---|---|
| modid | StevesFactoryManager |
| FML 注册键 | StevesFactoryManager:BlockCableClusterName(CABLE_CLUSTER_NAME_TAG,ModBlocks.java:55,159) |
| 未本地化名 | sfm.BlockCableCluster / sfm.BlockAdvancedCableCluster(ModBlocks.java:56-57) |
| 显示名 | 集线器 / 高级集线器(Cable Cluster / Advanced Cable Cluster) |
| TileEntity | TileEntityCluster(BlockCableCluster.java:130) |
| 方块类 | BlockCableCluster extends BlockCamouflageBase(BlockCableCluster.java:30) |
| 硬度 | 2.0(setHardness(2F),BlockCableCluster.java:36) |
| 爆炸抗性 | 10.0 — 源码未设置,Block 默认值 |
| metadata | meta & 8 = 高级(isAdvanced,BlockCableCluster.java:245-247) |
| 可打包组件数 | 3 类 7 项(见下) |
⚠️ 关键澄清:不是多方块结构
Cable Cluster 是单个方块,不是多方块机器。 本版本 SFM 全库无 multiblock / BlockController / formation 类。
TileEntityCluster 在同一个方块坐标内持有 List<TileEntityClusterElement>,加载时把每个 element 的 xCoord/yCoord/zCoord 直接赋成该方块坐标、并 setPartOfCluster(true)(TileEntityCluster.java:47-80)。所以"多个组件同处一格",而不是"多个方块拼成结构"。
功能
- 把 Relay / Intake / Camouflage 打包进一个方块,并与电缆网络交互
- 高级集线器(meta 8)本身就是可导通电缆:
BlockCable.isCable()显式包含blockCableCluster && isAdvanced(meta)(BlockCable.java:105) - 放置时从 ItemStack 的
Cable/TypesNBT 还原组件列表(cluster.loadElements(itemStack),BlockCableCluster.java:151) - 右键委托
cluster.onBlockActivated(...)(BlockCableCluster.java:233)
可打包组件(ClusterRegistry 注册表)
| # | 组件 | 变体 | 登记方式 | 证据 |
|---|---|---|---|---|
| 1 | TileEntityRelay |
普通 + 高级 | ClusterRegistryAdvancedSensitive |
ModBlocks.java:108-117 |
| 2 | TileEntityIntake |
普通 + 高级 | ClusterRegistryAdvancedSensitive |
ModBlocks.java:137-146 |
| 3 | TileEntityCamouflage |
NORMAL / INSIDE / SHAPE | ClusterRegistryMetaSensitive ×3 |
ModBlocks.java:166-180 |
| 4 | TileEntityOutput |
— | register(Class, Block) |
ModBlocks.java:122 |
| 5 | TileEntityInput |
— | register(Class, Block) |
ModBlocks.java:127 |
| 6 | TileEntityCreative |
— | register(Class, Block) |
ModBlocks.java:132 |
| 7 | TileEntityBUD |
— | register(Class, Block) |
ModBlocks.java:151 |
| 8 | TileEntityBreaker |
— | register(Class, Block) |
ModBlocks.java:156 |
| 9 | TileEntitySignUpdater |
— | register(Class, Block) |
ModBlocks.java:185 |
ClusterRecipe(有合成表)与 ClusterUpgradeRecipe(普通集线器 + 工厂线缆 → 高级集线器)负责装配(ModBlocks.java:293,296;ClusterUpgradeRecipe.java:18-22)。
审计订正
- 硬度错:原文写 1.2,实为 2.0(
setHardness(2F),BlockCableCluster.java:36)。这是本分类唯一一个不等于 1.2 的"电缆类"方块,原文显然从兄弟方块照抄。 - modid / 注册名错:原文
stevesfactorymanager:blockCableCluster→ modid 实为StevesFactoryManager;registerBlock传入实参是CABLE_CLUSTER_NAME_TAG = "BlockCableClusterName"(ModBlocks.java:55,159)。 - "逻辑集群 / 更复杂的网络拓扑"含混且有误导:原文把 Cluster 描述成网络拓扑概念。实际是单方块内组件聚合(TileEntityCluster.java:47-80),已改写并加"不是多方块结构"警示。
- TileEntity 行不准:原文写「
TileEntityCluster(自身)+TileEntityClusterElement(组件)」——后者不是"组件方块",而是所有可入簇组件的基类。 - 相关条目错链:原文
- [TileEntityClusterElement](cable-relay) - 集群元素基类把一个 Java 基类链接到 Relay 条目,纯凑链接。已删除。 - 补正:原文漏写"高级集线器可导通电缆"这一唯一使其区别于普通 Cluster 的机制(BlockCable.java:105)与全部 7 项可打包组件。
相关条目
- Cable - 基础电缆
- Cable Relay - 可被打包的组件之一
- Connection Block - 连接抽象(非注册物品)