• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
    • Preguntas
    • Profesores
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Pruebas Online
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

223
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]})
    }
}          
almost 3 years 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 vacante Precios Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda