附加包教程:24.对话
本帖最后由 Cat_Anchor 于 2023-6-17 14:31 编辑前言
今天,我们来学学对话。这又是一个比较冷门的内容。这个内容应该是在1.17中添加的。所谓对话(Dialogue),其实就是自定义的NPC对话。
https://klpbbs.com/static/image/hrline/line5.png
NPC对话
打开行为包根目录,打开dialogue文件夹,这里用于存放NPC对话文件。
{
"format_version": "1.17.100",
"minecraft:npc_dialogue": {
"scenes": [ //数组里包括了若干个场景。
{ //一个场景
"buttons": [ //数组里包括了若干个按钮。(就是可以执行命令的按钮。)
{ //一个按钮
"commands": [ //要执行的命令。
"/weather rain"
],
"name": { //按钮上的文字。可以用语言文件翻译。
"rawtext": [
{
"text": "播放下雨效果"
}
]
}
},
{ //又一个按钮
"commands": [
"/weather clear" //命令
],
"name": { //按钮上的文字
"rawtext": [
{
"text": "清除天气效果"
}
]
}
},
{ //还是一个按钮
"commands": [
"/give @initiator enchanted_book"
],
"name": {
"rawtext": [
{
"text": "空附魔书"
}
]
}
}
],
"npc_name": { //NPC的名字。可以使用语言文件。
"rawtext": [
{
"text": "测试"
}
]
},
"scene_tag": "test_tag", //场景标签。记住这个,一会儿要用在命令里。
"text": { //NPC说的话。可以使用语言文件。
"rawtext": [
{
"text": "NPC进行测试。"
}
]
},
"on_close_commands": [
"/say 退出"
], //关闭NPC界面时运行的命令。
"on_open_commands": [
"/say 进入"
] //打开NPC界面时运行的命令。
}
]
}
}
打开游戏,使用命令“/summon npc”生成一个npc。然后使用命令“/dialogue open @e @p 场景标签”来打开你刚才设定的NPC对话框。(注:命令中的“场景标签”四个字要替换成具体的场景标签,上面的代码示例中,场景标签是test_tag。)
如果你把上面的代码复制下来,放进你的行为包根目录/dialogue/名字.json,再运行上述命令,你会看到:
NPC的名字是“测试”。
NPC的对话框中的文字是“NPC进行测试。”
有3个按钮,分别是“播放下雨效果”(按下会下雨)“清除天气效果(按下会变成晴天)”“空附魔书(给予按按钮的玩家一本附魔书)”。
进入NPC界面时,在聊天栏提示“进入”。
退出NPC界面时,在聊天栏提示“退出”。
可以在这里自动生成一个NPC对话文件。
https://klpbbs.com/static/image/hrline/line1.png
总结
这一期,我们学完了对话。下一期,我们就要讲生成规则了。
第二十三期 第二十四期 第二十五期
页: [1]