我对此有疑问,我正在尝试添加一个名为Simon Says Player的角色,任何人都可以帮忙吗?
bot.on('message', message => {
let args = message.content.substring(PREFIX.length).split(" ");
switch (args[0]) {
case 'join':
let person = message.guild.member
if (!person) {
return message.reply('Couldn`t find the user!');
}
let mainRole = (role => role.name === "Simon Says Player");
member.addRole(mainRole.id);
message.channel.send('Successfully Entered The Game!!')
break;
}
})
答案 0 :(得分:0)
尝试用message.member.addRole(mainRole.id)
代替member.addRole(mainRole.id)
这应该在您的示例中有效:
switch (args[0]) {
case 'join':
let person = message.member
if (!person) {
return message.reply('Couldn`t find the user!');
}
let mainRole = message.guild.roles.cache.find(role => role.name === "Simon Says Player");
message.member.roles.add(mainRole);
message.channel.send('Successfully Entered The Game!!')
break;
}
答案 1 :(得分:0)
member
实际上是undefined
,您没有说明预期的功能,但是据我所知,您正在尝试给发送join
命令的成员一个角色
bot.on('message', message => {
let args = message.content.substring(PREFIX.length).split(" ");
switch (args[0]) {
case 'join':
let person = message.guild.member
if (!person) {
return message.reply('Couldn`t find the user!');
}
let mainRole = message.guild.roles.cache.find(role => role.name === "Simon Says Player");
message.member.roles.add(mainRole.id);
message.channel.send('Successfully Entered The Game!!')
break;
}
})