关灯 巨大 直达底部
亲,双击屏幕即可自动滚动
第一百五十七章 初识NPC

回到正题,对话框就像是个文本编辑器一样。如果超出它的显示能力,它的右侧就会出现滚动条,你可以通过滚动对话框来继续编辑或阅读。

让我们尝试输入点东西,比如输入『你好!』,然后关闭对话编辑界面。需要注意,你应该已经注意到右上角有两个关闭按钮了。上面那个关闭按钮将会直接关闭整个界面,而下面那个关闭按钮仅仅只会关闭对话编辑界面然后返回到最初的编辑界面而已。放心,不管是哪个按钮,你在对话框内所写的任何东西都是不会丢失的,它可是实时保存的!

这就是编辑NPC对话的方式,其实相当简单。接下来让我们来看看NPC的高级设置。

按下『高级设置』按钮,你就来到了『高级NPC设置』界面(图157-4)。

这个界面看起来特别空,就写着两句话(单击此按钮在NPC对话框中添加命令。可以同时添加多个命令)和一个『添加命令』按钮。那如果点一下按钮呢?(图157-5)

在『添加命令』按钮的上方,原来的两行文字消失了,取而代之的是一块『命令』面板。在这个面板上,有一个命令输入框,输入框右边是一个大大的『+』按钮,下方是三个开关,从左到右分别是『按钮模式』、『进入时』和『退出时』,其中『退出时』已经打开。在面板的右上角,还有一个小型的垃圾桶按钮。

点击垃圾桶可以删除这个面板以及上面的所有设置。面板的核心部分——命令输入框——看起来和命令方块的很像。但两者有两个重大区别。首先,NPC的命令输入框最大只能输入1024个字符,但命令方块能够输入个。其次,NPC的命令输入框可以换行,每行都可以写一个指令,执行时会按照从上到下的顺序执行,而命令方块不能换行且只能写入一条指令。

输入框右边巨大的『+』,点击它可以放大输入框。但这输入框目前实测有一个问题——虽然上限是1024,但写的内容超出了界面之后竟然就无法往下滑,仅仅只显示个省略号。

下方的三个按钮,用途是设置上面的命令会在什么情况下触发运行。默认是『退出时』,即在退出对话界面时会触发运行。需要注意,还记得刚才提到退出界面有两个关闭按钮吗?如果你点击下面的关闭按钮来退出,那么指令会正常运行(除非你处于编辑模式);如果你点击上面的按钮退出,那么指令反而不会运行(BugJump正常在线)(1.19.51版本实测)。

我们可以将指令的触发方式改成『进入时』或『按钮模式』。『进入时』,也就是玩家一打开NPC对话界面,就会触发指令运行,除非此时你处于编辑模式。『按钮模式』是一个比较特殊的触发方式,在你选择了这个模式之后,在三个按钮下方还会出现一个文本输入框,在这里你可以输入按钮显示的文本。这个文本输入框可以输入至多128个字符,但只有前16个字符才会真正有效显示出来。当你添加了触发方式为『按钮模式』的指令后,再打开对话界面,在『NPC的渲染图』和『对话框』下面将会出现一些按钮,上面显示着那些你自定义的文本(如果你啥也没写,按钮将不会显示任何文本)。点击这些按钮将会运行相应的指令,并且在指令运行完后对话窗口将自动关闭,如果此时还有设置退出时执行的指令,那这些指令也将会执行。

有趣的是,即使是在编辑模式下,你点击那些按钮,『按钮模式』的指令和『退出时』的指令(如果有)也能照常运行,这就省去了手动更改游戏模式的麻烦。

上面说到命令输入框可以换行,每行可以写一个指令,运行时从上到下运行。这时候可能就有问题了——如果有一行指令写错了会怎样?

答案是不会怎样,游戏会直接跳过这一行指令继续执行下去,直到没有指令可以执行。举个栗子:

give @initiator diamond 1 0

tellraw @initiator {“rawtext“:[{“text“:“§a您获得了一颗钻石!§r“}]}

WTF?!

say§e @initiator§r获得了一颗§b钻石§r!

小主,这个章节后面还有哦,请点击下一页继续阅读,后面更精彩!当上面这些指令被运行时,你的聊天栏将会显示:

您已被给予钻石*1

您获得了一颗钻石!

[NPC]你的游戏名获得了一颗钻石!

NPC在运行到『WTF?!』一行,并没有因为『WTF?!』是错误的指令而停止执行,反而是连错误信息都不放一个就继续执行下去。

你应该注意到了,在上面的指令中,出现了一个奇怪的目标选择器:@initiator

什么是『@initiator』?它指代了什么东西?