@Timezel

Когда участник дискорд сервера нажимает на эмоджи выдается ошибка, но когда я нажимаю кнопку все работает, роль выдается?

Я написал код который должен выдавать роль по нажатию на эмоджи, и он выдает, только мне. Когда другой участник дискорд сервера нажимает на эмоджи, выдается ошибка. Прошу помогите!
module.exports = {
    name: 'reactionrole',
    description: "Выдает роль по нажатию по эмоджи",
    async execute(message, args, Discord, client) {
        const channel = '790381294952644628';
        const verificationRole = message.guild.roles.cache.find(role => role.name === "Верификация");

        const verificationEmoji = '✅';

        let embed = new Discord.MessageEmbed()
        .setColor('#00cc66')
        .setTitle('Для прохождения верефикации нажмите на эмодзи снизу')
        .setDescription('Верификация - роль обозначающая игрока на сервере, позволяющая вам видеть текстовые и голосовые каналы нашего дискорда.')
            

        let messageEmbed = await message.channel.send(embed);
        messageEmbed.react(verificationEmoji);

        client.on('messageReactionAdd', async (reaction, user) => {
            
            if (reaction.message.partial) await reaction.message.fetch();
            if (reaction.partial) await reaction.fetch();
            if (user.bot) return;
            if (!reaction.message.guild) return;

            if (reaction.message.channel.ad == channel) {
                if (reaction.emoji.name === verificationEmoji) {
                    await reaction.message.guild.members.cache.get(user.id).roles.add(verificationRole);
                } else {
                    return;
                }
            }
        });

        client.on('messageReactionRemove', async (reaction, user) => {
            if (reaction.message.partial) await reaction.message.fetch();
            if (reaction.partial) await reaction.fetch();
            if (user.bot) return;
            if (!reaction.message.guild) return;

            if (reaction.message.channel.id == channel) {
                if (reaction.emoji.name === verificationEmoji) {
                    await reaction.message.guild.members.cache.get(user.id).roles.remove(verificationRole);
                } else {
                    return;
                }
            }
            
        });
    }
} >
module.exports = {
    name: 'reactionrole',
    description: "Выдает роль по нажатию по эмоджи",
    async execute(message, args, Discord, client) {
        const channel = '790381294952644628';
        const verificationRole = message.guild.roles.cache.find(role => role.name === "Верификация");

        const verificationEmoji = '✅';

        let embed = new Discord.MessageEmbed()
        .setColor('#00cc66')
        .setTitle('Для прохождения верефикации нажмите на эмодзи снизу')
        .setDescription('Верификация - роль обозначающая игрока на сервере, позволяющая вам видеть текстовые и голосовые каналы нашего дискорда.')
            

        let messageEmbed = await message.channel.send(embed);
        messageEmbed.react(verificationEmoji);

        client.on('messageReactionAdd', async (reaction, user) => {
            
            if (reaction.message.partial) await reaction.message.fetch();
            if (reaction.partial) await reaction.fetch();
            if (user.bot) return;
            if (!reaction.message.guild) return;

            if (reaction.message.channel.ad == channel) {
                if (reaction.emoji.name === verificationEmoji) {
                    await reaction.message.guild.members.cache.get(user.id).roles.add(verificationRole);
                } else {
                    return;
                }
            }
        });

        client.on('messageReactionRemove', async (reaction, user) => {
            if (reaction.message.partial) await reaction.message.fetch();
            if (reaction.partial) await reaction.fetch();
            if (user.bot) return;
            if (!reaction.message.guild) return;

            if (reaction.message.channel.id == channel) {
                if (reaction.emoji.name === verificationEmoji) {
                    await reaction.message.guild.members.cache.get(user.id).roles.remove(verificationRole);
                } else {
                    return;
                }
            }
            
        });
    }
}
  • Вопрос задан
  • 97 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы