# GUI 概述
>[success] 最后更新于2022年4月25日。
[TOC]
## 制作 GUI 图图片
制作 GUI 图片应符合下面的要求,具体制作步骤见 [Ps 版](gui_ps.md)和 [GIMP 版](gui_gimp.md)教程。
## GUI 图片规则
MC 百科的 GUI 的背景是一张不含任何物品的空白 GUI 图片。
### 图片必须
- 与功能方块的 GUI 相同或类似;
- 含有边框;
- 不包含玩家物品栏;
- 标准小格子内部长宽等于 32 像素;
- 异形/大格子内部长宽大于等于 32 像素。
- 内部元素分配合理,画面平衡;
- 宽度介于 320 至 520 像素之间;
- 高度介于 160 至 600 像素之间。
### 图片应该
- 含有 GUI 标题且名称符合“GUI 标题要求”;
- 与功能方块工作时的 GUI 相同或类似。
### GUI 标题要求
样式一
- 字号 17 点(分辨率 72 ppi);
- 字体宋体;
- 颜色 #565656;
- 无抗锯齿(消除锯齿);
- 在空间允许的情况下与画布居中对齐。
样式二
- 字号 16 点(分辨率 72 ppi);
- 字体 Unifont([下载链接](http://unifoundry.com/unifont/index.html));
- 颜色 #565656;
- 无抗锯齿(消除锯齿);
- 在空间允许的情况下与画布居中对齐。
![](https://i.mcmod.cn/editor/upload/20220205/1644055472_14273_oEhG.png)
## GUI 图片与 MC 百科
图片要适应百科的信息,你还需要知道MC百科的合成表的组成部分。
MC百科的 GUI 由以下部分组成:材料格(1),成品格(2~5),燃料格(6),能量信息(7)。其中,材料、成品格是必须的。![](https://i.mcmod.cn/editor/upload/20211023/1634999104_14273_EhDy.png)
### 格子
格子是合成表中资料的容器,因一般 GUI 中能容纳物品的地方都有一个**格子**(也称**槽**,slot)而得名。格子分为三种。
**材料格**是内的物品配方成立的条件之一,其中编辑者可填入“**物品/方块**”下的资料(本节中均以“物品”代称)。这个物品一般会在合成操作时被消耗,个别情况也可不消耗。
**成品格**内编辑者可填入“**物品/方块**”类型下的资料,作为配方的结果。
**燃料格**内的物品是配方成立的条件之一,固定为一个“**物品/方块**”下的资料,编辑时无法改变。燃料格里的物品在合成中一般不会被消耗,或者它的消耗不必展示(例如熔炉的燃料),或者它的消耗使用**能量信息**(见下节)展示。虽然一个燃料格固定容纳一个物品,但它可以代表一类物品,如熔炉 GUI 中以煤炭代替了燃料。燃料格的内容不会纳入“**材料统计**”。
对于一个 GUI,通常同时含有材料格和成品格。最低限制是材料格和成品格中有其一,只含其一的 GUI 会形成无输入或无输出的合成表。有时输出输出无法用格子表示(即格子内的东西不是物品或方块)而用**能量信息**代替时,也会产生只含其一的 GUI。一般 GUI 都会含有两者。燃料格可有可无。
每一个格子都具有以下参数:
<table class="gui_table" border="1">
<thead>
<tr>
<td class="gui_table_1">参数</td>
<td class="gui_table_2">类型</td>
<td class="gui_table_3">默认值</td>
<td>效果</td>
</tr>
</thead>
<tbody>
<tr>
<td>位置</td>
<td>数对(y,x)</td>
<td>(0,0)</td>
<td>以左上像素为原点确定格子的位置;若为(0,0)则该格子不会显示在编辑页中,但保留其中数据</td>
</tr>
<tr>
<td>允许设置数量<sup>1</sup></td>
<td>布尔值</td>
<td>假</td>
<td>为真时编辑时能指定数量,填写-1为不消耗<sup>2</sup>,默认为1;为假时固定为1</td>
</tr>
<tr>
<td>允许设置概率<sup>3</sup></td>
<td>布尔值</td>
<td>假</td>
<td>为真时编辑时能指定概率,填写-1为不消耗<sup>2</sup>,默认为100%;为假时固定为100%</td>
</tr>
<tr>
<td>使用大图标</td>
<td>布尔值</td>
<td>假</td>
<td>为真时图标使用大图标</td>
</tr>
<tr>
<td>单位</td>
<td>文本</td>
<td>空</td>
<td>编辑时填入的单位将在“材料统计”中显示</td>
</tr>
<tr>
<td colspan="4">
<strong>注释:</strong><br>
1 该参数<a href="https://github.com/Ahrwing/mcmod/issues/762">对燃料格无效</a>。<br>2 若有一个格子需要“不消耗”,“概率”“数量”都可以做到。无必要仅设其中一个为真即可。<br>3 燃料格没有"允许设置概率"参数。
</td>
</tr>
</tbody>
</table>
### 能量信息
这个功能最初被设计来显示合成所用消耗的能量。但因其通用性,现在它被用在了很多其他地方。
能量信息包含一个占位符的字符串,编辑时可在占位符位置输入任意文本。如下图的“总耗电: 24,000 EU”,能量信息应填写“总耗电: %s EU”,这样编辑时能把占位符 %s 替换成任意文本。![](<https://i.mcmod.cn/editor/upload/20211023/1635004445_14273_lFdz.png> =500x)
### 绑定信息及其他
**GUI 名称**会显示在 GUI 选择菜单、合成表左上角等地,用于区分各个 GUI。一般来说和它绑定的资料相同。如果一个资料绑定了多个 GUI,应使用互不相同的 GUI 名称如用括号简短加注以区别各 GUI。
**绑定模组 ID** 指定了绑定模组,会显示在 GUI 选择菜单、后台 GUI 管理页,用于区分各个 GUI 的归属。它还作为自动提示“此 GUI 是由另一个模组提供的”的判断依据。
**绑定资料 ID** 指定了绑定资料,决定“**材料统计**”中上方的文字的超链接。在被绑定资料的合成表页 mcmod.cn<wbr>/item<wbr>/tab<wbr>/id<wbr>.html 中会显示绑定 GUI 的所有合成表。这个页面可以通过资料页的“**查看合成/用途**”(网页宽度低时显示为“**合/用途**”)按钮访问。
**编辑注意事项**是一串文本。它会在合成表编辑页中,选中该 GUI 时显示,用来提示易错问题。
**锁定摆放要求**可选择锁定为有序或无序或不锁定。默认不锁定。
## 提交
大致了解“**GUI 图片与 MC 百科**”的内容后,把 GUI 图片和必要信息整合成一段文字[发送到百科社群](https://bbs.mcmod.cn/forum.php?mod=post&action=newthread&fid=12)编辑讨论版的“**编辑请求**”分类。
若拥有 GUI 所属模组的编辑员及以上权限,可在[后台](../main/admin/admin.md)直接添加。
下面是一个提交模板。
- 括号中的内容是提示文字,把它们替换成相应的内容。
- 正文中的十一项,如果不需要请填写“无”,最好不要删去。
- 如要在一贴中提交多个GUI而其中的某几项所有GUI都一样,可统一说明。
**标题**:【GUI添加】(模组名):(GUI名)
**正文**:
(先把制作好的GUI图片通过“**附件**”上传并插入到帖子当中。不要使用“图片”上传,它可能会给图片添加水印。如果对图片质量没有把握,可将 PSD 文件一并上传)
1. GUI 名称:
2. 绑定的百科资料链接:
3. 输入格子的位置、顺序:
4. 输出格子的位置、顺序:
5. 各输入输出格是否需要允许设置概率:
6. 各输入输出格是否需要允许设置数量:
7. 各输入输出格是否需要设置单位:
8. 燃料格的位置、顺序及内含资料链接:
9. 能量信息的内容、顺序:
10. 编辑注意事项:
11. 锁定锁定摆放要求:(有序或无序或不锁定,凡只有一个输入格的皆锁定为有序)