Discord.js检查角色而非权限

时间:2020-10-13 05:20:31

标签: javascript node.js discord.js

CMD错误:

C:\Users\<name>\Desktop\Discord Bots\AaryanBot\commands\kick.js:21
    if(member.hasPermission('MANAGE_MESSAGES')) return message.reply('You cannot kick this person!');
              ^

TypeError: member.hasPermission is not a function
    at Object.execute (C:\Users\<name>\Desktop\Discord Bots\AaryanBot\commands\kick.js:21:15)

还有kick.js

var Discord = require('discord.js');

module.exports = {
    name: 'kick',
    description: 'Kick COmmand(ADMINS ONLY)',
    execute(message, args) {
        if(!message.member.hasPermission('KICK_MEMBERS')) return message.reply('You can\'t use that!');

        var user = message.mentions.users.first();
        if(!user) return message.reply('You didn\'t mention anyone!');

        var member;

        try {
            member = message.guild.members.fetch(user);
        } catch(err) {
            member = null;
        }

        if(!member) return message.reply('They aren\'t in the server!');
        if(member.hasPermission('MANAGE_MESSAGES')) return message.reply('You cannot kick this person!');

        var reason = args.splice(1).join(' ');
        if(!reason) return message.reply('You need to give a reason!');

        var channel = message.guild.channels.cache.find(c => c.name === 'log');

        var log = new Discord.MessageEmbed()
            .setTitle('User Kicked')
            .addField('User:', user, true)
            .addField('By:', message.author, true)
            .addField('Reason:', reason)
        channel.send(log);

        var embed = new Discord.MessageEmbed()
            .setTitle('You were kicked!')
            .setDescription(reason);

        try {
            user.send(embed);
        } catch(err) {
            console.warn(err);
        }

        member.kick(reason);

        message.channel.send(`**${user}** has been kicked by **${message.author}**!`);
    }
}

0 个答案:

没有答案