【问题标题】:Discord.js role permissions for mention and ban command提及和禁止命令的 Discord.js 角色权限
【发布时间】:2020-09-11 23:56:40
【问题描述】:

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

否则,如果版主尝试禁止其他版主,则会导致严重权限错误“DiscordAPIError: Missing Permissions”

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

任何帮助都非常感谢

    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 是否有权限

【问题讨论】:

    标签: discord discord.js


    【解决方案1】:

    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})
        }
    }
    

    【讨论】:

    • 您好,感谢您的回复!所以上面的代码会检查 message.mentions.members.first() 是否有主持人角色?这就是我要找的。尝试禁止版主仍然会导致 API 权限错误而不是消息
    猜你喜欢
    • 1970-01-01
    • 2021-01-11
    • 1970-01-01
    • 2021-04-24
    • 2020-10-20
    • 1970-01-01
    • 2021-08-22
    • 2021-07-27
    • 2020-12-05
    相关资源
    最近更新 更多