Glasses Terminal
基本信息
| 属性 | 值 |
|---|---|
| 注册名 | openglasses:openglassesterminal |
| 显示名 | Glasses Terminal(tile.openglassesterminal.name) |
| 源码类 | OpenGlassesTerminalBlock(block/OpenGlassesTerminalBlock.java:20) |
| 基类 | BlockContainer |
| 材质 | Material.iron(:26) |
| TileEntity | OpenGlassesTerminalTileEntity(tileentity/OpenGlassesTerminalTileEntity.java:49) |
单层方块,非多方块。 无控制器、无几×几×几尺寸、不可旋转拆除。源码中无
multiblock相关代码。
TileEntity
GameRegistry.registerTileEntity(OpenGlassesTerminalTileEntity.class, "openglassesterminal")(OpenGlasses.java:113)。
OpenGlassesTerminalTileEntity 的声明(:49):
public class OpenGlassesTerminalTileEntity extends TileEntityEnvironment implements IChatListener
| 父类 / 接口 | 来自 | 作用 |
|---|---|---|
TileEntityEnvironment |
OpenComputers | 终端环境(Lua 运行时、驱动器) |
IChatListener |
Computronics | 接收聊天消息(ChatBox 升级用) |
这是本模组唯一的 TileEntity,也是它与 OpenComputers / Computronics 的接缝:AR 眼镜覆盖层渲染的正是这个 TileEntity 里的终端。
注册与使用
| 方法 | 行为 |
|---|---|
createNewTileEntity(World, int) |
创建上述 TE(:33) |
getIcon(int side, int metadata) |
分面贴图(:45) |
onBlockActivated(...) |
打开眼镜终端界面(:66) |
onBlockPreDestroy(...) |
破坏前清理(:83) |
getTileEntity(IBlockAccess, int, int, int, Class<T>) |
泛型取 TE 的静态辅助(:57) |
合成配方
OpenGlasses.java:129:
GameRegistry.addRecipe(new ItemStack(openTerminal), "R ", "S ", "M ",
'S', server, 'R', ram, 'M', cpu);
| 格 | 材料 | OC 物品名 | 数量 |
|---|---|---|---|
| 左列顶 | R |
Items.get("ram5") |
1 |
| 左列中 | S |
Items.get("geolyzer") |
1 |
| 左列底 | M |
Items.get("cpu3") |
1 |
即 3 件材料竖排一列(几何分析仪 + 内存卡 + CPU),其余 6 格留空。
配套
眼镜通过 bindToTerminal(ItemStack glass, Location uuid) 绑定到本方块的 UUID 后,即可远程打开该终端——见 AR Glasses。
相关条目
- AR Glasses - 绑定到本方块的物品
- Lua API - 终端内可用的脚本函数
- Widget System - 覆盖层可绘制的内容
- OpenComputers -
TileEnvironment与 OC 物品 - Computronics -
IChatListener