自动封装机 GUI Arcane Packager GUI

基本信息

属性 值
客户端界面 client/gui/ArcanePackagerGui.java(extends GuiContainer)
服务端容器 common/containers/ContainerArcanePackager.java(extends Container)
GUI ID 2
界面宽度 xSize = 190(ArcanePackagerGui.java:39)
界面高度 ySize = 234(ArcanePackagerGui.java:38)
对应方块 BlockStoneMachine 元数据 4

槽位布局

ContainerArcanePackager(ContainerArcanePackager.java:30-48):

区域 槽位数 坐标 槽位类 源码
3×3 输入矩阵 9 x=16+18*j, y=42+23*i Slot :30
功能槽 A 1 x=95, y=33 FilteredSlot :34
功能槽 B 1 x=113, y=33 FilteredSlot :35
输出槽 1 x=160, y=64 FilteredSlot :36
玩家背包 27 x=16+18*j, y=151+18*i Slot :44
玩家快捷栏 9 x=16+18*i, y=209 Slot :48

三个功能槽(:34-36)都使用 FilteredSlot——带物品过滤,对应界面上右侧的三个小图标按钮。

容器总大小为 12(TileArcanePackager.getSizeInventory() 返回 12),与 ItemStack[12] 内部数组一致(TileArcanePackager.java:30、:235-237)。

界面绘制

元素 绘制坐标 贴图 UV 源码
进度条 (89, 67) (210, 0),宽 tile.progress,高 9 :55
功能按钮 1 (91, 97) (249, 10) 8×8 :59
功能按钮 2 (91, 110) (249, 10) 8×8 :63
功能按钮 3 (91, 123) (249, 10) 8×8 :67
背景 居中 (0, 0) :78-80

进度条宽度由 TileEntity 的 progress 字段驱动,实现动态进度显示。

交互

触发 行为
右键方块 打开界面
输入红石信号 TileArcanePackager.updateRedstone(...) 切换工作状态(BlockStoneMachine.java:236)
破坏方块 12 格内容按随机偏移散落(BlockStoneMachine.java:159-176)

相关条目