自定义GUI
Custom GUIs
# 概述丨Overview
如果你想制作一个自定义 GUI,请在 "assets/minecraft/optifine/gui/container" 文件夹或者其任意一层子文件夹中创建一个 .properties 文件,并按照下面的模板编辑属性文件。
不同类型的容器有不同的要求和限制。详见下方。
# 常规属性丨General properties
容器(必需)
这是什么容器的GUI?
可能的值:
| 容器名 | 中文译名 |
|---|---|
| anvil | 铁砧 |
| beacon | 信标 |
| brewing_stand | 酿造台 |
| chest | 箱子 |
| crafting | 工作台 |
| dispenser | 发射器 |
| enchantment | 附魔 |
| furnace | 熔炉 |
| hopper | 漏斗 |
| horse | 马 |
| villager | 村民 |
| shulker_box | 潜影盒 |
| creative | 创造模式物品栏 |
| inventory | 物品栏 |
container=<容器名>
纹理(必需)
GUI 纹理的替换。
"texture" 属性替换默认的 GUI 纹理。
"texture.<路径>" 属性可以用于替换任何 GUI 纹理。
<路径> 相对于 "/assets/minecraft/textures/gui"
创造模式物品栏 GUI 没有默认纹理,所以必须使用路径纹理。
创造模式物品栏的例子:
# 文件 "assets/minecraft/optifine/gui/container/creative/creative_desert.properties
container=creative
biomes=desert
texture.container/creative_inventory/tab_inventory=tab_inventory_desert
texture.container/creative_inventory/tabs=tabs_desert
texture.container/creative_inventory/tab_items=tab_items_desert
texture.container/creative_inventory/tab_item_search=tab_item_search_desert
至少需要一个 "texture" 或者 "texture.<路径>"。
texture=<纹理>
texture.<路径>=<纹理>
自定义实体或方块实体名称 (可选)
如果你想让特定名称的容器显示这个 GUI,就需要用到这个属性。
该名称使用与自定义物品纹理的 NBT 标签类似的语法。
以 "!" 开头的值表示匹配相反的东西(非)。
示例:
匹配名称:
name=My Sword
使用特殊格式匹配名称: 注: 为了获得最佳兼容性,请使用转义序列 '\u00a7' 而不是§
name=\u00a74\u00a7oMy Sword
使用 ? 和 * 的通配符
name=pattern:Letter to *
匹配
Letter to Herobrine
Letter to a creeper
不匹配
letter to Herobrine
通配符, 不区分大小写
name=ipattern:Letter to *
匹配
Letter to Herobrine
Letter to a creeper
letter to Herobrine
Java 正则表达式
(参阅 http://docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html (opens new window))
name=regex:Letter (to|from) .*
匹配
Letter to Herobrine
Letter from Herobrine
不匹配
letter to Herobrine
A Letter to Herobrine
Java 正则表达式, 不区分大小写
name=iregex:Letter (to|from) .*
匹配
Letter to Herobrine Letter from Herobrine letter to Herobrine
不匹配
A Letter to Herobrine
注: 所有反斜线也必须输入两次。
正则表达式和通配符中的文字反斜杠必须输入4次。
正确:
name=regex:\\d+ name=regex:\\\\ name=/\\/\\
错误:
name=regex:\d+ name=regex:\\ name=//\
name=<名称>
生物群系(可选)
这里列出了原版生物群系:https://minecraft.gamepedia.com/Biome#Biome_IDs (opens new window)。
也可以使用模组添加的生物群系。
biomes=<生物群系列表>
高度(可选)
从1.18开始高度可以使用负值,用于范围时需要将负数用小括号括起来。
heights=<高度范围>
# 箱子的特定属性丨Chest specific properties
是否为大箱子(可选)
large=<true|false>
是否为陷阱箱(可选)
trapped=<true|false>
是否为圣诞节箱子(可选)
christmas=<true|false>
是否为末影箱(可选)
ender=<true|false>
# 信标的特定属性丨Beacon specific properties
等级(可选)
levels=<等级>
# 村民的特定属性丨Villager specific properties
职业(可选)
列出村民职业,可选填等级
格式
<职业>[:等级1,等级2,...]
可选择的职业:
| 职业 | 中文译名 |
|---|---|
| none | 失业 |
| armorer | 盔甲匠 |
| butcher | 屠夫 |
| cartographer | 制图师 |
| cleric | 牧师 |
| farmer | 农民 |
| fisherman | 渔夫 |
| fletcher | 制箭师 |
| leatherworker | 皮匠 |
| librarian | 图书管理员 |
| mason | 石匠 |
| nitwit | 傻子 |
| shepherd | 牧羊人 |
| toolsmith | 工具匠 |
| weaponsmith | 武器匠 |
示例:
职业为农民(所有等级)或图书管理员(等级为 1,3,4)
professions=farmer librarian:1,3-4
职业全名
professions=minecraft:fisherman minecraft:shepherd minecraft:nitwit
professions.<n>=<职业>
# 马和发射器的特定属性丨Horse and dispenser specific properties
变体(可选)
马的变体:horse donkey mule llama
发射器的变体:dispenser dropper
variants=<变体>
# 羊驼和潜影盒的特定属性丨Lllama and shulker box specific properties
颜色(可选)
列出潜影盒颜色或羊驼背上的地毯颜色。
颜色列表:white orange magenta light_blue yellow lime pink gray light_gray cyan purple blue brown green red black
colors=<颜色>