我对此有问题,我正在尝试添加一个名为西蒙说玩家的角色,有人可以帮忙吗?
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;
}
})
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;
}
})
尝试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;
}