嘿嘿!
您知道我如何通过一条命令为用户添加角色吗?
e.克:/接受@Kuezy -> 一旦我发送这个命令,机器人就应该为用户添加@Applicant 角色。
这是我的代码:
let embed = new Discord.MessageEmbed()
.setColor(0x00FF00)
.setTitle(`__Anmeldung bearbeitet | Angenommen!__`)
.setDescription(`Lieber **${banMember}**,\nwir möchten dir mitteilen, das deine Anmeldung für unser Turnier angenommen wurde! Weitere Informationen folgen demnächst.\n\nSchönen Tag noch! :tada:`)
.setFooter(`${colours.mainname}`, message.guild.iconURL())
banMember.send(embed)
var role = message.guild.roles.find(role => role.name === "MyRole");
banMember.member.addRole(role);
:D
答案 0 :(得分:0)
自从 Discord.JS 的旧版本之后,我就没有真正接触过,但我可以告诉你,你的命令中向你所指的用户添加角色的方法都不存在了。参考你的最后一行:banMember.member.addRole(role);
。
为了向用户添加角色,您只需获取用户的成员对象,然后使用 .roles.add()
函数添加所需的角色:
message.guild.member(banMember).roles.add(role)
此外,随着 v12 的变化,您现在需要在 .find()
和 .get()
函数中缓存您要查找的角色,因此您应该更改您的角色查找函数到以下:
var role = message.guild.roles.cache.find(role => role.name === "MyRole");
您可以在此处阅读有关 v12 更改的更多信息:https://github.com/discordjs/discord.js/releases/tag/12.0.0