TileEntitySpaceStationBase(空间站基座)

事实基准:/Users/evlos/a/mirror/Galacticraft(master,minecraftVersion = 1.7.10)逐行读源码。

注册信息

属性 值 来源
TileEntity 注册名 Space Station GalacticraftCore.java:716
注册类 micdoodle8.mods.galacticraft.core.tile.TileEntitySpaceStationBase 同上
关联方块 空间站方块 GalacticraftCore.java:716 同块
父类 TileEntityMulti core/tile/TileEntitySpaceStationBase.java:11
实现接口 IMultiBlock 同上
是否配置门控 否(无条件注册) GalacticraftCore.java:716

槽位数量与布局

没有物品槽位(不实现 IInventory)。 空间站基座只负责生成结构与提供推进器挂载点。

结构尺寸:1 × 1 × 3 竖柱(逐循环读出)

core/tile/TileEntitySpaceStationBase.java:44-46(onCreate):

for (int y = 1; y < 3; y++) {                                     // y = 1, 2
    final BlockVec3 vecToAdd = new BlockVec3(
            placedPosition.x, placedPosition.y + y, placedPosition.z);   // x、z 原样不动
    ...
}
维度 范围 计数
X 只有主块那一列(placedPosition.x 原样) 1
Y 0(主块)~ 2 3
Z 只有主块那一列(placedPosition.z 原样) 1

1 × 1 × 3 = 3 格(主块 + 上方 2 个假方块)。

onDestroy(:55-56)同样只有 for (int y = 0; y < 3; y++), X/Z 无循环——再次印证结构是纯竖柱。

⚠ 不是 3×3、不是 7×7、不是任何横向展开的结构。 与 NASA 工作台的 3×3×4 形成对比。 把空间站写成「7×7×7 的大多方块」在 1.7.10 源码中没有依据。

⚠ 这个结构与「火箭」无关。 1.7.10 的火箭是 Entity(EntityTieredRocket 系), 源码树中不存在 BlockRocket / TileEntityRocket。

可否旋转

不可旋转。 onCreate / onDestroy 都没有按朝向变换坐标的分支—— X/Z 恒取 placedPosition 原值,结构沿 Y 轴对称。

GUI / Container

没有 GUI,也没有 Container。onActivated(:36)内不开界面, 只是返回激活结果。

⚠ GuiIdsCore 的 8 个常量里有 NASA_WORKBENCH_ROCKET(:5)等, 但没有空间站基座的 GUI。

网络封包

继承 TileEntityMulti 的 mainBlockPosition(@NetworkedField(targetSide = Side.CLIENT), core/tile/TileEntityMulti.java:17-18)自动同步。无独立的封包 ID。

相关条目