在 Discord.js 中将 Bot 作为前缀提及

2023-12-27

仅当我不向整个命令添加空格时,我的前缀才有效,例如:

{
    "token": "",
    "prefix": "<@453463055741747200>"
}


const Discord = require("discord.js");

module.exports.run = async (bot, message, args) => {
    let something = args.join(" ");
    message.delete().catch();
    message.channel.send(something);
}

module.exports.help = {
    name: "say"
}

假设我的机器人名称是MyBot,上面的代码仅适用于@MyBot这么说,当命令是时我怎样才能使它工作@MyBot说这个?


也许这不起作用,因为我不使用命令处理程序,所以我有不同的代码风格,但您可以尝试我使用的方法来允许我的机器人与多个全局前缀一起使用:

var prefixes = require('./prefixes.json')
//in your case can only be var prefixes = ["<@453463055741747200>", "<@!453463055741747200>"]

let prefix = false;
for (const thisPrefix of prefixes) {
    if (message.content.toLowerCase().startsWith(thisPrefix)) prefix = thisPrefix;
}

因此消息只需要以所需的前缀开头即可。另外,我添加了两个提及前缀,因为不和谐是愚蠢的并且有两种类型的用户提及:昵称提及和普通提及。因此,在您的代码中,如果机器人有缺口,它将无法工作。这就是为什么我添加了以及。希望这对您有帮助

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Discord.js 中将 Bot 作为前缀提及 的相关文章

随机推荐