我正在使用nodeJs服务器上的discord.js库对discord Bot进行编码。 这是我的问题:当事件发生时(例如某人发送消息),机器人可以回答角色成员或所有人吗? message.reply(“我的回复”)方法仅在我现在使用时才回答消息的作者...
答案 0 :(得分:0)
您的问题是message.reply()
是一个非常有限的方法:它总是(emem )提及邮件的作者,而您不能覆盖它。
您需要使用更通用的方法channel.send()
,然后自己构建提及。 .reply()
只是一种常用形式的快捷方式,但是您需要自定义一些内容。
大概您希望它与消息在相同的通道中发生,因此您需要message.channel.send("Whatever content you want")
。
现在,要添加角色,您需要确定如何选择一个。是固定的吗?然后您可以hard-code a role mention by role ID:<@&134362454976102401>
(当然,它必须是您所需的角色ID)。
如果要查找角色(例如按名称),则需要通过搜索有问题的公会来实现。您可以通过message.guild
来访问它,但要注意,对于DM,它将是未定义的。
然后您可以做类似的事情
const role = message.guild.roles.find(role => role.name === "NameYouWant");
message.channel.send(`${role} something something`);
因为角色对象在转换为字符串时会被提及。