早上好,我想知道如何执行踢踢和禁令命令,但是我可以添加一个原因,并且只有特定的成员才能使用它。目前,我有这段代码,但是我不知道该如何设置权限,我可以给出一个原因。
client.on('message', message => {
if (!message.guild) return;
if (message.content.startsWith('kick')) {
const user = message.mentions.users.first();
// If we have a user mentioned
if (user) {
const member = message.guild.member(user);
if (member) {
member
.kick('Optional reason that will display in the audit logs')
.then(() => {
message.reply(`Has kickeado a: ${user.tag}`);
})
.catch(err => {
message.reply('No he podido kickear a el miembro.');
console.error(err);
});
} else {
message.reply("El jugador no está en el Guild!");
}
} else {
message.reply("Pero hombre, mencioname al pobrecito que vas a kickear...");
}
}
});
client.on('message', message => {
if (!message.guild) return;
if (message.content.startsWith('ban')) {
const user = message.mentions.users.first();
if (user) {
const member = message.guild.member(user);
if (member) {
member
.ban('Optional reason that will display in the audit logs')
.then(() => {
message.reply(`Has baneado a: ${user.tag}`);
message.author.send('Has sido baneado por mal comportamiento!')
})
.catch(err => {
message.reply('No he podido banear al usuario.');
console.error(err);
});
} else {
message.reply("El jugador no está en el Guild!");
}
} else {
message.reply("Pero hombre, mencioname al pobrecito que vas a banear");
}
}
})
});
如您所见,这是每个人都可以访问的命令,除此以外,我想更改该禁令的原因
答案 0 :(得分:0)
您可以使用GuildMember#hasPermission
查看成员的权限例如:
if (!message.member.hasPermission("BAN_MEMBERS") return;
以下是权限列表:Permissions#FLAGS