【发布时间】:2020-10-09 06:51:50
【问题描述】:
如何让我的机器人不给用户一个角色或禁止他们上面的成员,因为像这样的角色层次结构https://media.discordapp.net/attachments/223867697312694272/723382952330919976/image0.png
相反,我的机器人允许用户将上面的角色添加给他们自己或其他用户,只要他们拥有所需的权限https://cdn.discordapp.com/attachments/223867697312694272/723382993384767550/image0.png
我的代码:
const Discord = require("discord.js");
module.exports.run = async (bot, message, args) => {
if (!message.member.hasPermission("MANAGE_ROLES")) return message.channel.send("You don't have permissions to use this!");
let xdemb = new Discord.RichEmbed()
.setColor("RANDOM")
.setTitle("Role Command")
.addField("Description:", `Adds/removes a role to/from a member`, true)
.addField("Usage:", "\`?role\` [user] roleName", true)
.addField("Example:" ,"\`?role\` @user goodrole", true)
let member = message.mentions.members.first();
if(!member) return message.channel.send(xdemb)
let role = args.slice(2).join(" ")
if(!role) return message.channel.send("Provide a role to assign")
let gRole = message.guild.roles.find(r => r.name.toLowerCase() === role.toLowerCase())
if(!gRole) return message.channel.send(`There's no role with the name \`${role}\``)
if(member.roles.has(gRole.id)) {
member.removeRole(gRole.id)
message.channel.send(`Removed role \`${role}\` from **${member.user.username}**`)
} else {
member.addRole(gRole.id)
message.channel.send(`Added role \`${role}\` to **${member.user.username}**`)
}
}
module.exports.help = {
name: "role"
}
【问题讨论】:
标签: javascript discord.js