我如何让漫游器忽略某些角色// Discord.js

时间:2018-08-01 04:44:47

标签: javascript bots discord

我使用以下$kek命令做了一个简单的自动禁止命令。 当前,任何角色的任何人都可以使用此功能。我希望它忽略某些角色。例如,任何具有管理员权限的人都可以在不被禁止的情况下使用它。如何输入以便机器人忽略?

代码如下

   exports.exec = (Cuckbot, message) => {
 // Won't catch log errors because I can't be fucked, you can tell if it ran correctly or not. 
 // Bans users if they use $kek command.
 // Bot will notify afterwards that he was banned.

 if(message.content.startsWith("$kek")) { 
 message.member.ban("Dumbass used $kek") } // Audit log message

 message.channel.send({
    embed: {
      color: 0,
      description: `${message.author} just banned himself. `
    }
  }).catch(e => {
    Cuckbot.log.error(e);
  });
};

1 个答案:

答案 0 :(得分:0)

您可以使用以下代码检查成员是否具有特定权限:

if (message.member.hasPermission("SEND_MESSAGES")) return message.reply('You are not allowed to use this commmand')

或检查多个权限:

if (message.member.hasPermissions(["SEND_MESSAGES", "MANAGE_SERVER"])) return message.reply('You are not allowed to use this commmand')

可以在这里找到所有权限标志:https://discord.js.org/#/docs/main/stable/class/Permissions?scrollTo=s-FLAGS

要忽略某些角色,可以使用以下命令:

if (message.member.roles.has("ROLE ID")) return message.reply('You are not allowed to use this commmand')