Kick / Ban Command的Discord.js v12原因

时间:2020-08-19 12:39:31

标签: discord.js

早上好,我想知道如何执行踢踢和禁令命令,但是我可以添加一个原因,并且只有特定的成员才能使用它。目前,我有这段代码,但是我不知道该如何设置权限,我可以给出一个原因。

client.on('message', message => {



  if (!message.guild) return;


  if (message.content.startsWith('kick')) {
    
            


    const user = message.mentions.users.first();
    // If we have a user mentioned
    if (user) {

      const member = message.guild.member(user);

      if (member) {

        member
          .kick('Optional reason that will display in the audit logs')
          .then(() => {

            message.reply(`Has kickeado a: ${user.tag}`);
          })
          .catch(err => {

            message.reply('No he podido kickear a el miembro.');

            console.error(err);
          });
      } else {

        message.reply("El jugador no está en el Guild!");
      }

    } else {
      message.reply("Pero hombre, mencioname al pobrecito que vas a kickear...");
    }
  }
   
});

client.on('message', message => {
  if (!message.guild) return;

            

  if (message.content.startsWith('ban')) {

    const user = message.mentions.users.first();
    
    if (user) {

      const member = message.guild.member(user);

      if (member) {
        

        member
          .ban('Optional reason that will display in the audit logs')
          .then(() => {

            message.reply(`Has baneado a: ${user.tag}`);
             message.author.send('Has sido baneado por mal comportamiento!')
          })

          .catch(err => {

            message.reply('No he podido banear al usuario.');

            console.error(err);
          });
      } else {

        message.reply("El jugador no está en el Guild!");
      }

    } else {
      message.reply("Pero hombre, mencioname al pobrecito que vas a banear");
    }
  
}
})
});

如您所见,这是每个人都可以访问的命令,除此以外,我想更改该禁令的原因

1 个答案:

答案 0 :(得分:0)

您可以使用GuildMember#hasPermission

查看成员的权限

例如:

 if (!message.member.hasPermission("BAN_MEMBERS") return;

以下是权限列表:Permissions#FLAGS