CommandNPC 是一款灵感来源于 Mineplex 服务器的插件,它为 NPC 增加了新功能。玩家只需右键点击一个 Citizens NPC,即可执行预设的命令。本插件需要 Citizens 2 支持。
重要须知
- 本插件需要 Java 8 或更高版本。
- 本插件必须配合 Citizens 2 使用。
- 本插件现已支持 PlaceholderAPI。
- 如果你是插件的早期更新用户,在 BukkitDev 工作人员审核通过更新前,可能会看到“未知网页”的提示,请耐心等待。
权限与基础
- 要为 NPC 设置命令,你需要拥有
commandnpc.admin权限。 - 你可以在命令中使用
%name%作为占位符,代表点击 NPC 的玩家名称。 - 本插件支持 BungeeCord 跨服命令,你可以使用
server <服务器名称>来将玩家传送到指定服务器。
命令与标志详解
所有命令均需对选中的 Citizens NPC 使用,格式为 /npc <子命令>。
添加命令
/npc cmdadd [-c console] [-o Op] [-r random] [-i ignorePermMsg] [-l ignoreMoneyMsg] [--v price] [--t clickType] [--d delay] [--cd cooldown] [--p custom.permission.node] <command...>
为选中的 NPC 添加一个点击后执行的命令。
可用标志:
-c:以控制台身份执行命令。-o:以OP(管理员)身份执行命令。-r:如果添加了多个命令,则随机选择其中一个执行。-i:设为true时,当玩家无权限不发送无权限提示信息。-l:设为true时,当玩家金钱不足不发送无金钱提示信息。--v <价格>:执行命令时,向玩家收取指定金额(支持小数)。--p <权限节点>:要求玩家必须拥有指定的权限节点才能执行。--d <延迟>:命令执行前的延迟时间(单位:游戏刻,整数)。--cd <冷却>:命令的冷却时间(单位:游戏刻,20刻=1秒)。--t <点击类型>:触发命令的点击类型(left左键,right右键,both两者皆可)。默认使用config.yml中的全局设置。
> 注意:像 --v 这样需要额外参数的标志,前面需要两个短横线 --。
查看命令信息
/npc cmdinfo [id]
查看已添加到 NPC 的所有命令的详细信息。
- 如果指定了
[id],则只显示该条命令的信息。 - 命令的
id可通过此命令查询获得。
修改命令设置
/npc cmdset [-c console] [-o Op] [-r random] [-m cdMsg] [-i ignorePermMsg] [-l ignoreMoneyMsg] [--v price] [--t clickType] [--d delay] [--cd cooldown] [--p custom.permission.node] [command | cdMsg...]
修改指定命令的各项参数。命令的 id 通过 /npc cmdinfo 查询。
可用标志:
-c:切换是否以控制台身份执行(在 true/false 间切换)。-o:切换是否以OP身份执行(在 true/false 间切换)。-r:切换是否为随机执行模式。-m [cdMsg...]:设置玩家处于冷却时间内点击 NPC 时收到的提示信息。注意:当与其他标志一起使用时,此信息必须放在命令的最后。-i:切换是否忽略无权限提示信息。-l:切换是否忽略无金钱提示信息。--v <价格>:设置执行命令所需金额。--p <权限节点>:设置所需的权限节点。--d <延迟>:设置命令执行延迟。--cd <冷却>:设置命令冷却时间。--t <点击类型>:设置触发点击类型(left,right,both)。
移除命令
/npc cmdremove <id>
移除指定 ID 的命令。命令的 id 通过 /npc cmdinfo 查询。
重置所有命令
/npc cmdreset
移除选中 NPC 上的所有命令。
如何设置 NPC
- 首先,根据你的需求编辑
config.yml配置文件。 - 在游戏中,选中你想要添加命令的 Citizens NPC。
- 使用
/npc cmdadd命令(语法如上所述)为你选中的 NPC 添加命令。这些命令会被保存。 - 如果你想移除所有命令,使用
/npc cmdreset命令即可。
链接与支持
- 项目源码 (GitHub): https://github.com/messageofdeath/CommandNPC
- 统计信息 (bStats): https://bstats.org/plugin/bukkit/CommandNPC
如果你喜欢这个插件并希望支持它的后续开发,你可以向开发者捐赠。请在本插件页面的右上角寻找捐赠链接。