手册JSON格式 - SQwatermark/Patchouli-wiki-zh_cn GitHub Wiki
这个页面详细介绍了你可以在 book.json 文件中设置的每一个键。
- name(字符串,必需)
手册物品和 GUI 中显示的手册名。对于模组作者来说,可以是一个本地化键(localization key)。
- landing_text(字符串,必需)
将会显示在手册的扉页上的文本。可以使用样式。对于模组作者来说,可以是一个本地化键。
- advancement_namespaces(字符串数组)
在 Patchouli 1.15.2-1.2-28 版本中,这个字段没用了,任何进度都可以用于锁定内容。
用于锁定章节的进度的命名空间。任何要使用的命名空间都应该在这里声明,使帕秋莉手册知道去跟踪并监听它们来解锁手册内容。例如,如果你在一个章节中使用了 "yourmod:cooladvancement",你需要在这个数组中添加 "yourmod"。查阅用进度锁定内容来获取更多有关信息。
不允许向数组中添加 "minecraft",这是为了防止不必要的大量数据传输。
- book_texture(字符串)
手册的 GUI 的背景材质。你可以使用任何资源路径(resource location),但是 强烈建议 你使用内置的材质之一,以便于当新元素被添加时,你可以立刻更新。帕秋莉手册内置的材质如下:
- patchouli:textures/gui/book_blue.png
- patchouli:textures/gui/book_brown.png(默认材质)
- patchouli:textures/gui/book_cyan.png
- patchouli:textures/gui/book_gray.png
- patchouli:textures/gui/book_green.png
- patchouli:textures/gui/book_purple.png
- patchouli:textures/gui/book_red.png
如果你想要使用自制材质,你可以复制上述任何一个材质并随意进行修改。
- filler_texture(字符串)
页面填充图案的材质(章节页数为奇数时,最后一个空白页显示的方块图案)。如果你想在空白页显示别的内容,可以定义此项。
- crafting_texture(字符串)
合成表的材质。如果你想修改合成表的背景图案,定义此项。虽然大多数情况下这么做不太值当,但是如果你想要显得又酷又时髦,你可以这么做。
- model(字符串)
手册物品的模型。这可以是任何你定义的基础物品模型。帕秋莉手册提供了一些可直接使用的模型:
- patchouli:book_blue
- patchouli:book_brown(默认值)
- patchouli:book_cyan
- patchouli:book_gray
- patchouli:book_green
- patchouli:book_purple
- patchouli:book_red
模组作者请注意:不要使用上述任何模型。不同模组使用相同的基础材质是很糟糕的事情,为了便于区分,请自己做一个!上述模型是给整合包作者提供的。帕秋莉手册可以自动注册你传入的任何模型,所以你不必为它们敲任何代码。
我们给手册模型提供了一个叫 "completion" 的属性,它的值等于手册中解锁的章节的比例,这使得手册可以在解锁更多内容时改变模型。
- text_color(字符串)
普通文本的颜色,十六进制("RRGGBB", 可不写#)。默认值为 "000000"。
- header_color(字符串)
页眉文本的颜色,十六进制("RRGGBB", 可不写#)。默认值为 "333333"。
- nameplate_color(字符串)
扉页的手册的铭牌的文字颜色,十六进制("RRGGBB", 可不写#)。默认值为 "FFDD00"。
- link_color(字符串)
链接文本的颜色,十六进制("RRGGBB", 可不写#)。默认值为 "0000EE"。
- link_hover_color(字符串)
悬停链接文本的颜色,十六进制("RRGGBB", 可不写#)。默认值为 "8800EE"。
- progress_bar_color(字符串)
进度进度条的颜色,十六进制("RRGGBB", 可不写#)。默认值为 "FFFF55"。
- progress_bar_background(字符串)
进度进度条的背景颜色,十六进制("RRGGBB", 可不写#)。默认值为 "DDDDDD"。
- open_sound(字符串)
手册开启时播放的音效。这是一个指向声音文件的资源路径(对于模组作者来说,需要正确注册)。
- flip_sound(字符串)
手册翻页时播放的音效。这是一个指向声音文件的资源路径(对于模组作者来说,需要正确注册)。
- index_icon(字符串)
手册的总目录显示的图标。如果你想用一个物品作为图标,可以填写一个 ItemStack 字符串,也可以填写一个指向正方形图片的资源路径。如果你想要使用一个资源路径,确保图片的后缀为 .png。这一项是可选的,如果你不想设置此项,默认值为此手册的图标(这也是推荐值)。
- show_progress(布尔值)
默认值为 true。即便启用了进度,将其设置为 false 可以禁用进度进度条。
- version(字符串)
手册的版本号(edition)。默认值为 "0",将其设置为任何其它数值(这里用 X 表示)将会在手册的工具提示(tooltip)和扉页上显示 "X Edition"(例如,X 为 3 的时候,会显示 "3rd Edition")。将其设置为 "0" 或者什么都不设置将会显示 "subtitle" 的值。如果值为非数字,会显示为 "编者版(Writer's Edition)"。
对于模组作者。这是一个可以用 gradle 填充的地方。你可以在这里写上类似于 ${book_version} 的文字并添加进你的构建脚本(build script)中。可以使用非数字的值,不会造成任何问题。
- subtitle(字符串)
手册的副标题,如果 "version" 被设置为 "0" 或什么都不设置,它将会显示在工具提示(tooltip)和扉页的手册名下方。
- creative_tab(字符串)
手册物品所在的物品栏。默认是杂项(Miscellaneous),你可以随意将其移动到其他物品栏。下面是原版物品栏的名字:
- buildingBlocks
- decorations
- redstone
- transportation
- misc(默认值)
- food
- tools
- combat
- brewing
对于模组作者,只需要填写构造物品栏时填写的字符串即可。
- advancements_tab(字符串)
手册关联的进度栏。如果设置了此项,扉页将会显示一个进度按钮,点击可以进入进度栏。
- dont_generate_book(布尔值)
默认值为 false。如果你不想让帕秋莉手册自动为你的手册生成一个物品,可将此项设置为 true。当且仅当你是模组作者且确实需要一个自定义的物品类时,可以设置此项。
- custom_book_item(字符串)
这是接着上一个键的,如果你确实有一个自定义的手册物品,在这里设置。需要填写一个 ItemStack 字符串。
- show_toasts(布尔值)
默认值为 true。如果你不想让你的手册在有新的可阅读的章节时显示滚动通知(toast),将此项设置为 false。
- use_blocky_font(布尔值)
默认值为 false。如果要使用原版像素字体(译注:ascii.png)而不是更细的字体(译注:unicode_page_xx.png),将这一项设置为true。如果你有一个字体 mod,无论怎么设置都会使用字体mod提供的字体。
- i18n(布尔值)
默认为 false。如果设置为 true,在渲染前将会尝试在语言文件中寻找类别、章节、页面标题以及页面的本地化键。
- macros(对象)
手册应该使用的样式宏(formatting macros)。阅读文本样式 101获取更多有关信息。
- pause_game(布尔值)
默认值为true。在单人游戏中打开手册GUI会暂停游戏。
拓展键
在拓展其他手册中还有一些和拓展手册有关的键。
译注:
- 材质的模板都可以在 assets/patchouli/textures 下找到