我正在开发一个使用可以使用户静音的命令的机器人,但我希望它首先从该用户中删除所有角色,以便他们无法修改自己的角色或服务器。我之前在网站上看到过这个问题的回答,但是当我尝试时它不起作用。我想知道是否有人可以提供一些可以帮助解决此问题的代码。
答案 0 :(得分:0)
GuildMember 具有属性 roles,它是成员 roles 的集合,您可以在其中访问他的所有角色,然后执行循环以删除所有角色。
GuildMember.roles.cache.forEach(role => GuildMember.roles.remove(role))
答案 1 :(得分:0)
虽然 Cursed 的答案可能有效,但有一种更简单的方法可以做到这一点。只需将 GuildMember 的角色设置为空数组
此代码块来自官方 DJS Docs
// Remove all the roles from a member
guildMember.roles.set([])
.then(member => console.log(`Member roles is now of ${member.roles.cache.size} size`))
.catch(console.error);