/dialog 命令

/dialog 命令

图片处理:未转载源站游戏图像;具体物品、实体、效果或界面说明以中文文字保留。

来源:Commands/dialog,英文修订 ID:3826023。

此命令仅适用于 Java 版,所需权限等级为 2,需启用作弊。不要与基岩版的 /dialogue 混淆。

管理向玩家显示的对话框界面。服务器管理员可向指定玩家显示自定义对话框、数据包中预定义的对话框,并清除玩家屏幕上显示的对话框。

语法

/dialog show <targets> <dialog>

把内联 SNBT 定义或 minecraft:dialog 注册表中(通常由数据包定义)的对话框显示给指定玩家。

/dialog clear <targets>

清除指定玩家当前显示的对话框。

参数

<targets>: entity:要显示或清除对话框的玩家,必须为玩家名称、玩家类型的目标选择器或 UUID。

<dialog>: dialog:要向玩家显示的对话框,仅用于 show。可以是数据包中定义、存储于 minecraft:dialog 注册表的命名空间 ID,例如 custom:my_dialog、minecraft:server_links,或直接定义结构的内联 SNBT。结构见对话框格式。

结果与输出

命令不完整或任一参数指定错误时无法解析。目标选择器包含非玩家实体,或 show 的 SNBT 无效、注册表中不存在指定对话框时失败;其他情况成功。

失败时成功次数、success 和 result 均为 0。成功时成功次数与 success 均为 1,result 为目标玩家数量。

示例

向最近玩家显示已加载数据包中 data/custom/dialog/example/test.json 定义的对话框:

/dialog show @p custom:example/test

向所有玩家显示内置服务器链接对话框:

/dialog show @a minecraft:server_links

向最近玩家显示标题为“Hello”、页脚带“Ok”按钮的通知对话框:

/dialog show @p {type:"minecraft:notice",title:"Hello"}

向所有玩家显示带“Yes please”和“Nope”按钮的简单确认对话框。按下前者会执行命令给予玩家钻石,按下后者会关闭对话框:

/dialog show @a {type:"minecraft:confirmation",title:"Give yourself diamond?",yes:{label:"Yes please","action":{"type":"run_command","command":"give @s diamond"}},no:{label:"Nope"}}

清除所有玩家当前可见的对话框:

/dialog clear @a

画廊

参考资料


本文为 Minecraft Wiki 对应英文条目的中文翻译与改编,已按要求省略变更历史。原作者与贡献者见来源页及其历史;除另有说明外,按 CC BY-NC-SA 3.0 非商业、署名、相同方式共享。