Discord.js代码不会禁止他人使用。我该如何解决?

时间:2020-07-31 22:24:32

标签: node.js discord.js

所以我已经编写了一个小禁令命令,这里是代码

if (message.content.startsWith(`${prefix}ban`)) {

    let member = message.mentions.members.first();
    member.ban().then((member) => {
        message.channel.send(`:wave: ${member.displayName} has been kicked`);
    }).catch(() => {
        if (!message.member.hasPermission(['BAN_MEMBERS', 'ADMINISTRATOR'])) {
            message.reply("You cannot ban members");
        } else if (member.hasPermission(['KICK_MEMBERS', 'BAN_MEMBERS', 'ADMINISTRATOR'])) {
            message.reply("You cannont ban this member");
        }
    })
}

当我执行我的前缀禁令,然后播放器名称时,它不会禁止他们,并且控制台中没有出现任何错误,所以请您帮忙

感谢

罗宾

3 个答案:

答案 0 :(得分:1)

这肯定会起作用:

import time
import pyautogui

def SendScript():
    time.sleep(2)
    with open('script.txt') as f:
        lines = f.readlines()
    for line in lines:
        time.sleep(2)
        pyautogui.typewrite(line.strip())
        pyautogui.press('enter')
SendScript()

答案 1 :(得分:0)

您可以这样做

const Discord = require('discord.js');
const client = new Discord.Client();

client.on('message', (message) => {
    let args = message.content.split(' ');
    let command = args.shift();
    if (command === 'ban') {
        let member = message.mentions.members.first() || message.guild.members.get(args[0]);
        if (!member) return message.reply('pls mention a member or write ID for BAN');
        if (!message.member.hasPermission('BAN_MEMBERS')) return message.reply('You has no permission for ban members');
        if (message.member.roles.highest <= member.roles.highest) return message.reply(`You can't ban member with the same or highest role position`);
        if (!member.manageable) return message.reply('I cant ban this member');
        member.ban();
    }
});

答案 2 :(得分:0)

我的答案是

client.on('message', (message) => {
    let args = message.content.split(' ');
    let command = args.shift();
    if (command === 'ban') {
        let member = message.mentions.members.first() || message.guild.members.get(args[0]);
        if (!member) return message.reply('pls mention a member or write ID for BAN');
        if (!message.member.hasPermission('BAN_MEMBERS')) return message.reply('You has no permission for ban members');
        if (message.member.roles.highest.position <= member.roles.highest.position) return message.reply(`You can't ban member with the same or highest role position`);
        if (!member.manageable) return message.reply('I cant ban this member');
        member.ban();
    }
});