Как запустить команду Kick бота через node.js? - PullRequest
1 голос
/ 31 мая 2019

Я на мгновение попытался составить команду, чтобы ударить участника, но после тестирования в mons discord сообщение не появляется, и участник не удаляется.

Так что это для разногласий бота с Node.js.Я пытался переделать команды через сайты и через видео (для команды kick), редактор не выдает мне никакой ошибки, но бот не отвечает на указанную команду

client.on('message', message => {
    let args = message.content.substring(PREFIX.length).split(" ");

    switch (args[0]) {
      case 'kick' :
        if(!args[1]) message.channel.send('Vous devez spécifier la personne.')

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

        if(user){
          const member = member.guild.member(user);

          if(member){
            member.kick('Vous avez été expulsé du serveur !').then(() =>{
              message.reply('Le joueur suivant a été expulsé : ${user.tag}');
            }).catch(err =>{
              message.reply('I was unable to kick the member')
              console.log(err);
            });
          } else
            message.reply("Le membre n'est pas dans la guilde.")
          }

        }


  })

Я бы поэтомуВозможно, знаете, почему эта команда не работает.Хотя я думаю, что должен ответить на ваши вопросы.Заранее спасибо за помощь!

1 Ответ

0 голосов
/ 31 мая 2019

Вы можете попробовать использовать обработчик команд, вы можете использовать это guide , затем создать папку для команд внутри этой папки, вы можете создать kick.js, который будет для команды kick, затем выполните это

let kUser = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0]));
if(!kUser) return message.channel.send("Please mention a user to kick!")
let kReason = args.join(" ").slice(22);
if(!kReason) return message.channel.send ("Please specify some reasons for the kick")
message.guild.member(kUser).kick(kReason);
message.channel.send(`${kUser} has been kicked from the server`);

Не забудьте также проверить разрешение, чтобы вы были уверены, что у них есть разрешение, прежде чем они смогут ударить участников, а также вы можете зарегистрировать удар в канале, куда бот отправит сообщение после того, как пользователь нажал вот так

// this will look for logchannel so if you don't have that channel you can create or let logchannel = message.guild.channels.find(c => c.name === "logchannel");
logchannel.send(`${kUser} has been kicked from the server`);
...