我想有一个命令,从一个成员除一个特定角色以外的所有角色。现在,我已经做了它,所以它删除所有的角色,然后添加一个我想保留的延迟,但如果某人有很多角色,它也删除我想保留的那个。我的代码:
member.roles.remove(member.roles.cache).catch(error => {
message.reply(`failed to remove roles of <@${member.id}>, try moving at least one of my roles above all of the other ones`)
return
});
antagReason.split('')
setTimeout(() => {
member.roles.add(antagonistRoleID)
.then(memberAdded => {
message.reply(`you have succesfully antagonized <@${member.id}> with the reason **${antagReason}** <:AliasAntag:757173746925830165>`);
})
.catch(error => {
console.log(error);
});
}, 200);
有没有办法除去一个角色之外的所有角色?提前谢谢你。
不用删除每个角色然后再添加一个,只需使用GuildMemberRemanager.set()
member.roles
.set([antagonistRoleID])
.then((memberAdded) => {
message.reply(
`you have succesfully antagonized <@${member.id}> with the reason **${antagReason}** <:AliasAntag:757173746925830165>`
);
})
.catch((error) => {
console.log(error);
});