我想添加一些使用 adminstator 命令的权限,如ban、kick 等。 当我添加该命令时,我无法使用 kick 命令,而当我尝试使用 ban 命令时,我会得到如下输出: “@xxx,你不能踢这个公会的成员。”
if (message.author.bot) return;
// This is where we'll put our code.
if (message.content.indexOf(prefix) !== 0) return;
const args = message.content.slice(prefix.length).trim().split(/ +/g);
const command = args.shift().toLowerCase();
if(command === 'kick') {
const user = message.guild.member(message.author);
if (user.hasPermission(['KICK_MEMBERS'])) {
let reason = args.join(" ");
const member = message.guild.member(etiketlenmiskisi);
message.channel.send(`${message.author} took her/his kickhammer!`);
message.channel.send('https://tenor.com/view/sao-liz-lisbeth-anime-ban-gif-14368031');
member.kick(reason);
message.channel.send(`${etiketlenmiskisi} kicked successfully.`);
}} else {
message.channel.send(`${message.author}, you can't kick a member in this guild.`);
}
});
client.on("message", message => {
if (message.author.bot) return;
// This is where we'll put our code.
if (message.content.indexOf(prefix) !== 0) return;
const args = message.content.slice(prefix.length).trim().split(/ +/g);
const command = args.shift().toLowerCase();
if(command === 'ban') {
const user = message.guild.member(message.author);
if (user.hasPermission(['BAN_MEMBERS'])) {
const etiketlenmiskisi = message.mentions.users.first();
let reason = args.join(" ");
const member = message.guild.member(etiketlenmiskisi);
message.channel.send(`${message.author} took her/his banhammer!`);
message.channel.send('https://tenor.com/view/sao-liz-lisbeth-anime-ban-gif-14368031');
member.ban(reason);
message.channel.send(`${etiketlenmiskisi} banned successfully.`);
}} else {
message.channel.send(`${message.author}, you can't ban a member in this guild.`);
}
});
答案 0 :(得分:0)
在 else 语句中是“你不能踢”。应该是 else if。这应该可以解决问题。