【问题标题】:Discord.js Assign a role based off a certain message reactionDiscord.js 根据某个消息反应分配角色
【发布时间】:2021-02-24 23:16:06
【问题描述】:

如果会员对某条消息做出某种反应,我想要它。它会给他们一个角色。 我知道如何添加角色

let role6 = member.guild.roles.cache.find(role => role.name == "Member");
if(!role6) return;
user.roles.add(role6);

但我不确定谁会被 :white_check_mark: 对频道中某个消息的反应触发。有什么想法吗?

【问题讨论】:

    标签: javascript discord discord.js roles


    【解决方案1】:

    您可以使用messageReactionAdd 事件,当有人对消息做出反应时会发出该事件。

    client.on('messageReactionAdd', (reaction, user) => {
     if (reaction.message.id !== 'Message ID') return;
     const role6 = member.guild.roles.cache.find((role) => role.name == 'Member');
     if (!role6) return;
     reaction.guild.member(user).roles.add(role6);
    });
    

    【讨论】:

    • 错误消息 = 消息未定义 - 我该怎么办?
    • 啊,对不起,那是我的错误。将message 替换为reaction.message
    • 啊好吧,干杯。有没有办法编辑它,所以它只会为某种反应添加一个角色?
    • 如果是unicode emoji,比如✅,可以使用if (reaction.emoji.name === ✅)。如果是自定义表情符号,可以使用if (reaction.emoji.id === 'Emoji ID')
    猜你喜欢
    • 2020-08-30
    • 1970-01-01
    • 2021-02-07
    • 1970-01-01
    • 2021-12-14
    • 1970-01-01
    • 2021-02-06
    • 2021-06-06
    相关资源
    最近更新 更多