Company logo
  • Empleos
  • Bootcamp
  • Acerca de nosotros
  • Para profesionales
    • Inicio
    • Empleos
    • Cursos y retos
    • Preguntas
    • Profesores
    • Bootcamp
  • Para empresas
    • Inicio
    • Nuestro proceso
    • Planes
    • Pruebas
    • Nómina
    • Blog
    • Calculadora

0

124
Vistas
TypeError: Cannot read properties of undefined (reading 'roles')

So im making a command to kick people(ofcourse) and theres a part where i wanna let people know if they dont have permision or the bot dosent have permision to kick the specified person, but then i came across this error whenever I tried to run the code

const mentionedRank = mentionedMember.roles.highest.position; ^ TypeError: Cannot read properties of undefined (reading 'roles')

My whole code for that command is:

    if (isCommand === 'kick') {
        const mentionedMember = message.mentions.members.first();
        const mentionedRank = mentionedMember.roles.highest.position;
        const memberRank = message.member.roles.highest.position;
        const botRank = message.guild.me.roles.highest.position;
        var embed = new Discord.MessageEmbed()

        let reason = args.slice(1).join(' ')
        if(!reason) {
             reason = 'no defined reason'
        }

        if(!message.member.permissions.has('KICK_MEMBERS'))
            embed = embed
            .setDescription('You do not have the permission to kick a user!')
            .setColor("BLUE")
            message.reply({embeds: [embed]})
        if(!message.guild.me.permissions.has('KICK_MEMBERS'))
            embed = embed
            .setDescription('I do not have the permission to kick a user')
            .setColor("BLUE")
            message.reply({embeds: [embed]})
        if(memberRank <= mentionedRank){
            embed = embed
            .setDescription('You cannot kick that user as they have a equal/higher rank as you')
            .setColor("BLUE")
            message.reply({embeds: [embed]})
        }
        if(botRank <= mentionedRank){
            embed = embed
            .setDescription('I cannot kick that user as they have a equal/higher rank than me')
            .setColor("BLUE")
            message.reply({embeds: [embed]})
        }
        
        if(!args[0]){
            embed = embed
            .setDescription('Please specify the user that you want to kick!')
            .setColor("BLUE")
            message.reply({embeds: [embed]})
        }
        if(member){
        member.kick();
        let guildname = client.guilds.fetch()
        embed = embed
        .setTitle(`${mentionedMember} kicked!`)
        .setDescription(`${mentionedMember} was kicked from the server for ${reason}.`)
        .setColor("BLUE")
        message.reply({embeds: [embed]})
    } else{
        embed = embed
        .setDescription(`"${args[0]}" was not found`)
        .setColor("BLUE")
        message.reply({embeds: [embed]})
    }
}          
7 months ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar empleo Planes Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2023 PeakU Inc. All Rights Reserved.