• 欢迎来到 HiMCBBS 论坛~ 加入QQ群:879016948 获得最新公告,并与群友们一起聊天吹水!
DFL3130

教程 如何制作GUI

DFL3130

管理成员
版主
正式成员
搬运组
成员
注册
2024年08月07日
帖子
166
金粒
金粒12,158粒
钻石
钻石0颗
嗨币
嗨币2个

1. GUI 基础设置

GUI 属性配置


属性
说明
推荐值
GUI 类型带槽位(可创建输入/输出槽)或不带槽位根据功能需求选择
GUI 宽度界面宽度(像素)176(原版箱子标准宽度)
GUI 高度界面高度(像素)166(原版箱子标准高度)
物品栏偏移调整玩家物品栏位置(仅带槽位GUI有效)X:0, Y:84(与原版对齐)
渲染背景层是否显示灰白色背景建议开启(除非自定义背景)
绑定到方块关联带有物品栏功能的方块(创建Tile Entity)如熔炉、工作台等
打开时暂停游戏单机模式下是否暂停游戏通常关闭(原版箱子行为)

编辑器选项

  • 网格吸附:开启后组件自动对齐网格
  • 网格尺寸:X/Y轴网格大小(默认9像素)
  • 网格偏移:调整网格起始位置

2. GUI 组件详解

基础组件

标签(Label)

  • 文本类型
    • 固定文本:直接输入文字(支持多语言翻译)
    • 动态文本:通过过程返回字符串(可显示变量/实体数据等)
  • 文本颜色:使用十六进制颜色码(如#FFFFFF)
  • 显示条件:通过过程控制标签可见性

图片(Image)

  • 纹理路径:必须放在resources/guis/overlay目录
  • 显示条件:可设置动态显示逻辑

交互组件

按钮(Button)

  • 文本按钮
    • 固定文本(支持多语言)
    • 点击事件:关联过程实现功能
    • 默认纹理 + 悬停纹理(尺寸必须相同)
    • 点击事件:如打开新GUI/执行命令

复选框(Checkbox)

  • 机器名称:在过程中引用该组件的ID
  • 初始状态:通过过程决定默认是否勾选
  • 旁边文本:说明性文字(支持多语言)

文本框(Text Field)

  • 机器名称:用于过程中获取输入内容
  • 初始提示文字:灰色占位文本(如"请输入...")

实体渲染(Rendered Entity)

  • 实体提供器:过程返回要显示的实体
    • 初始Y轴旋转角度
    • 是否跟随鼠标旋转(3D展示效果)

3. 槽位与物品栏系统

槽位类型


类型
功能
典型用途
输入槽允许玩家手动放入物品合成台材料槽
输出槽仅通过过程放置物品合成台结果槽

槽位配置

  • 槽位ID:必须唯一(建议从0开始顺序编号)
  • 自定义颜色:槽位背景色(透明表示默认)
    • 指定物品/标签限制可放入物品
    • 示例:#minecraft:planks(只接受木板类)

4. 高级技巧

动态GUI设计

  1. 条件显示
    mcreator
    [显示条件过程]
    └─ 如果 玩家持有"钥匙物品" → 返回true
  2. 实时更新
    mcreator
    [每Tick更新标签]
    └─ 设置标签文本 = "剩余时间: " + (倒计时变量)

原版风格适配

  • 尺寸参考
    • 标准容器:176×166
    • 信标GUI:230×219
    • 使用256×256纹理图集
    • 保持1:1像素比例

调试建议

  1. 使用/data get entity @p Inventory检查槽位数据
    • 是否绑定到正确方块
    • 过程是否有语法错误
    • 组件是否被更高优先级组件覆盖
:组件渲染优先级按菜单列表顺序(从上到下=从低到高)
 
后退
顶部