Discord.js角色权限提及和禁止命令

时间:2020-05-25 10:45:38

标签: discord discord.js

我所有的ban命令都已设置并正常工作,它检查消息作者是否具有适当的权限,但是我需要添加的是检查,以检查user1(message.member.mentions.first)是否具有主持人角色,并且返回

否则,如果主持人尝试禁止另一个主持人,则会导致严重的权限错误“ DiscordAPIError:缺少权限”

我有一条错误消息,但经过一个复杂的过程,现在该消息已被否定。

任何有助于极大赞赏

    if (!message.member.roles.cache.find(r => r.name === 'Moderator') && !message.member.roles.cache.find(r => r.name === 'Staff')) return message.channel.send('You dont not have the required permissions').then(msg => {
                msg.delete({ timeout: 5000 })

以上代码检查作者是否具有权限。我该如何适应检查message.mention是否具有权限

1 个答案:

答案 0 :(得分:0)

message.membermessage.mentions.members.first()相同,因为它们是GuildMember object。所以你也需要检查

const member = message.mentions.members.first()
if(!member.roles.cache.find(r => r.name === 'Moderator') && !member.roles.cache.find(r => r.name === 'Staff')) {
    return message.channel.send("You don't have any permission for that!").then(msg => {
        msg.delete({timeout: 5000})
    }
}