如何检查禁止其他人的人是否具有足够高的权限?

时间:2021-02-05 17:57:18

标签: javascript discord.js

我最近对我的 discord bot 发出了禁止命令,但是当我的朋友试图禁止我时(他有禁止的权限,但角色较低)我的 bot 发送消息说它已经禁止了我,但它当然没有,在那里一种查看某人的角色是否低于应该被禁止的人的方法? (我认为代码没用,所以我只会说我的代码会检查除此之外的所有内容,如果有人需要我的代码,我会提供)

2 个答案:

答案 0 :(得分:0)

您可以比较目标角色和执行者角色的位置。例如添加下面的检查。 target 对象必须是 guildMember

if (message.member.roles.highest.position <= target.roles.highest.position) return message.reply('You can`t kick member with the same or highest role')

答案 1 :(得分:0)

在我的机器人中,我有一行代码概述了如下权限:

if(command === "ban") {
  if(!message.member.roles.cache.some(r=>["RoleName"].includes(r.name)))
  return message.reply("You do not have permissions to use this command!");