[英]How do make Discord.JS client give role to message author if a staff member reacts his message?
client.on('message', async message => {
var staffmember = message.guild.members.cache.filter(member => {
member.roles.cache.get('785610325457764383')
})
let user = message.author.id
if(message.channel.id !== '752887367052034108') return
message.react('752897613669335140')
message.react('752896964718362644')
.then(() => {
message.awaitReactions(reaction => reaction.id === '752897613669335140' && staffmember, {
})
.then((collected) => {
if(collected.reaction.id === '752897613669335140') {
user.roles.add('786958045350854698')
user.send('role given.')
}
})
})
})
这是我的代码。 在可以被过滤器接受的成员通过正确的 ID 对消息做出反应后,机器人什么也不做。
要在用户上使用 .roles 属性,他们必须是 Discord.GuildMember,而不是 Discord.User。 这意味着你必须改变
let user = message.author.id
和
let user = message.member
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.