开启辅助访问     
收藏本站

站内搜索

搜索

Minecraft(我的世界)苦力怕论坛

[BE教程] 附加包教程:24.对话

 发表于 2023-3-3 18:47:03 来自手机|显示全部楼层|阅读模式 IP:天津
本帖最后由 Cat_Anchor 于 2023-6-17 14:31 编辑

前言

今天,我们来学学对话。这又是一个比较冷门的内容。这个内容应该是在1.17中添加的。所谓对话(Dialogue),其实就是自定义的NPC对话。
NPC对话

打开行为包根目录,打开dialogue文件夹,这里用于存放NPC对话文件。

  1. {
  2.   "format_version": "1.17.100",
  3.   "minecraft:npc_dialogue": {
  4.     "scenes": [ //数组里包括了若干个场景。
  5.       { //一个场景
  6.         "buttons": [ //数组里包括了若干个按钮。(就是可以执行命令的按钮。)
  7.           { //一个按钮
  8.             "commands": [ //要执行的命令。
  9.               "/weather rain"
  10.             ],
  11.             "name": { //按钮上的文字。可以用语言文件翻译。
  12.               "rawtext": [
  13.                 {
  14.                   "text": "播放下雨效果"
  15.                 }
  16.               ]
  17.             }
  18.           },
  19.           { //又一个按钮
  20.             "commands": [
  21.               "/weather clear" //命令
  22.             ],
  23.             "name": { //按钮上的文字
  24.               "rawtext": [
  25.                 {
  26.                   "text": "清除天气效果"
  27.                 }
  28.               ]
  29.             }
  30.           },
  31.           { //还是一个按钮
  32.             "commands": [
  33.               "/give @initiator enchanted_book"
  34.             ],
  35.             "name": {
  36.               "rawtext": [
  37.                 {
  38.                   "text": "空附魔书"
  39.                 }
  40.               ]
  41.             }
  42.           }
  43.         ],
  44.         "npc_name": { //NPC的名字。可以使用语言文件。
  45.           "rawtext": [
  46.             {
  47.               "text": "测试"
  48.             }
  49.           ]
  50.         },
  51.         "scene_tag": "test_tag", //场景标签。记住这个,一会儿要用在命令里。
  52.         "text": { //NPC说的话。可以使用语言文件。
  53.           "rawtext": [
  54.             {
  55.               "text": "NPC进行测试。"
  56.             }
  57.           ]
  58.         },
  59.         "on_close_commands": [
  60.           "/say 退出"
  61.         ], //关闭NPC界面时运行的命令。
  62.         "on_open_commands": [
  63.           "/say 进入"
  64.         ] //打开NPC界面时运行的命令。
  65.       }
  66.     ]
  67.   }
  68. }
复制代码


打开游戏,使用命令“/summon npc”生成一个npc。然后使用命令“/dialogue open @e[c=1] @p 场景标签”来打开你刚才设定的NPC对话框。(注:命令中的“场景标签”四个字要替换成具体的场景标签,上面的代码示例中,场景标签是test_tag。)
如果你把上面的代码复制下来,放进你的行为包根目录/dialogue/名字.json,再运行上述命令,你会看到:
NPC的名字是“测试”。
NPC的对话框中的文字是“NPC进行测试。”
有3个按钮,分别是“播放下雨效果”(按下会下雨)“清除天气效果(按下会变成晴天)”“空附魔书(给予按按钮的玩家一本附魔书)”。
进入NPC界面时,在聊天栏提示“进入”。
退出NPC界面时,在聊天栏提示“退出”。

可以在这里自动生成一个NPC对话文件。
总结

这一期,我们学完了对话。下一期,我们就要讲生成规则了。


苦力怕论坛,感谢有您~

本版积分规则

本站
关于我们
联系我们
坛史纲要
官方
哔哩哔哩
技术博客
下载
网易版
安卓版
JAVA
反馈
意见建议
教程中心
更多
捐助本站
QQ群
QQ群

QQ群

访问手机版

访问手机版

手机版|小黑屋|系统状态|klpbbs.com

粤公网安备 44200002445329号 | 由 木韩网络 提供支持 | GMT+8, 2024-12-14 07:01

声明:本站与Mojang以及微软公司没有从属关系

Powered by Discuz! X3.4 粤ICP备2023071842号-3