【发布时间】:2018-05-27 03:22:43
【问题描述】:
我正在使用 discord.js 发出禁令命令,但我不知道如何检查目标是否比执行命令的用户的角色低。我试图查找它,但我找不到它。我在其他不和谐机器人中看到过这个功能,所以任何帮助都将不胜感激!
【问题讨论】:
标签: javascript node.js discord discord.js
我正在使用 discord.js 发出禁令命令,但我不知道如何检查目标是否比执行命令的用户的角色低。我试图查找它,但我找不到它。我在其他不和谐机器人中看到过这个功能,所以任何帮助都将不胜感激!
【问题讨论】:
标签: javascript node.js discord discord.js
GuildMember 有.highestRole,它返回成员拥有的最高角色。从那里你可以比较两个成员最高角色的位置,并确定一个人是否可以互相禁止。您甚至可以使用.comparePositionTo() 来比较角色。
if(message.member.highestRole.comparePositionTo(message.mentions.members.first().highestRole) > 0){
//member has higher role then first mentioned member
message.mentions.members.first().ban();
}
(未经测试)
【讨论】:
first 是一个函数,应该有message.mentions.members.first().highestRole 和message.mentions.members.first().ban()