Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

405
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]})
    }
}          
about 4 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 Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda