Estoy tratando de permitir que alguien haga cosas solo si sus permisos son correctos, y actualmente solo me está dando este error: TypeError: Cannot read properties of undefined (reading 'has')
Aquí está mi código:
// @ts-check const { SlashCommandBuilder } = require('@discordjs/builders'); const userParam = "user" module.exports = { data: new SlashCommandBuilder() .setName('checkuserskins') .setDescription(`Check's the selected user's custom skin inventory.`) .addUserOption(option => option.setName("user") .setDescription('The user to check') .setRequired(true) ), async execute(interaction) { const user = interaction.options.getUser('user'); if (!user) { return interaction.reply({ content: `Could not find user ${user}`, ephemeral: true }); } if (!interaction.user.roles.has("937401230316159076") || interaction.user.id !== user.id) { return interaction.reply({ content: `You don't have permission to do that!`, ephemeral: true }); } return interaction.reply(); }, };Gracias.
Un user no tiene información de gremio. Desea obtener la interaction.member que tiene toda la información de los miembros relacionada con el gremio.
Además, GuildMemberRoleManager no has un método, pero su propiedad de cache sí lo tiene.
Entonces necesitas usarlo así:
interaction.member.roles.cache.has("937401230316159076")