在 1 月 18 日之前,这是正确的做法:他们决定通过允许运行自定义命令来使机器人的“未知命令”和“错误”回复可覆盖。
此更改可能尚未有详细记录,但已由Gawdl3y通过此提交master
推送到分支。这个话题来自这个问题,也被列在“重要的东西”项目的“完成”栏中[链接]。
如果你想让它像过去一样工作,你需要使用以前的版本;如果不更新这部分代码,您将无法更新库以添加新功能。
Command
通过此更新,您可以通过扩展类(通常)然后添加设置为true
:unknown
和的两个属性来创建新命令hidden
。
如果要例子,可以直接看unknown-command
修改作者的默认:
module.exports = class UnknownCommandCommand extends Command {
constructor(client) {
super(client, {
name: 'unknown-command',
group: 'util',
memberName: 'unknown-command',
description: 'Displays help information for when an unknown command is used.',
examples: ['unknown-command kickeverybodyever'],
unknown: true,
hidden: true
});
}
run(msg) {
return msg.reply(
`Unknown command. Use ${msg.anyUsage(
'help',
msg.guild ? undefined : null,
msg.guild ? undefined : null
)} to view the command list.`
);
}
};
请记住避免加载默认值unknown-command
:CommandoRegistry.registerDefaultCommands()
除非您明确告诉它不要这样做,否则默认情况下会加载它。
为避免这种情况,unknownCommand: false
请在加载这些命令时添加选项。
client.registry.registerDefaultCommands({
unknownCommand: false
});