注入爪 GUI Infusion Claw GUI
基本信息
| 属性 | 值 |
|---|---|
| 客户端界面 | client/gui/InfusionClawGui.java(extends GuiContainer) |
| 服务端容器 | common/containers/ContainerInfusionClaw.java(extends Container) |
| GUI ID | 1 |
| 背景贴图 | /gui/gui_infusion_claw.png(InfusionClawGui.java:31) |
| 槽位类 | FilteredSlot(ContainerInfusionClaw.java:27) |
槽位布局
ContainerInfusionClaw(ContainerInfusionClaw.java:27-39):
| 区域 | 槽位数 | 坐标 | 源码 |
|---|---|---|---|
| 机器槽位 | 1 | x=80, y=32 |
:27(FilteredSlot,只接受魔杖/手杖) |
| 玩家背包 | 27 | x=8 + j*18, y=84 + i*18 |
:34 |
| 玩家快捷栏 | 9 | x=8 + i*18, y=142 |
:38 |
机器只有 1 个槽位——一次充一支魔杖。
界面绘制
| 元素 | 绘制坐标 | 贴图 UV | 源码 |
|---|---|---|---|
| 槽位内容高亮 | (80, 32) |
(240, 0) 16×16 |
:60 |
| 复选框(未勾选) | baseX+114, baseY+36 |
(244, 19) 8×8 |
:81 |
| 复选框(已勾选) | baseX+114, baseY+36 |
(244, 27) 8×8 |
:85 |
| 复选框文字 | — | 文本 | :91 |
背景绘制走标准 drawTexturedModalRect(var5, var6, 0, 0, xSize, ySize)(:74-76)。
交互逻辑
| 触发 | 行为 |
|---|---|
| 打开时机器已失效 | isInvalid() 为真则立即 displayGuiScreen(null) 关闭界面(:41-44) |
| 机器正在运行 | 用 GL11.glPushAttrib(GL11.GL_ALL_ATTRIB_BITS) 改变渲染状态(:47-49) |
| 玩家手持不可放入的物品 | 同上(isItemValidForSlot(0, cursorStack) 为假) |
| 勾选复选框 | 勾选后只允许取出空魔杖(研究页:en_US.lang:45) |
相关条目
- 注入爪 - 对应方块
- GUI 总览 - ID 与配对关系
- ClickBehavior 挂钩 - 注入矩阵的稳定性代价