创建BulkDelete命令|不和谐

时间:2020-08-01 12:49:08

标签: javascript node.js discord discord.js

当您阅读标题时,我正在尝试为Discord机器人做出清晰的命令,但我无法使其正常工作。

这是一个片段:

client.on('message', message => {
    if (message.content = "clear") {
        let args = message.content.substring(prefix.length).split(" ");
        var deleteCount = message.guild.members.cache.get(args[1]);
        if (message.member.hasPermission("MANAGE_MESSAGES")) {
            const deleteCount = args[2];
            const fetched = ({
                limit: deleteCount
            });
            message.delete(fetched)
            try {

            } catch (error) {

            }(error => message.reply(`Couldn't delete messages because of: ${error}`));
            if (!deleteCount || deleteCount < 2 || deleteCount > 100)
                return message.reply("Please provide a number between 2 and 100 for the number of messages to delete");
            message.channel.send('Successfully deleted ' + `${deleteCount}` + 'messages!');
        }
    }
});

也不要问我在做什么,为什么我从试图复制它的人那里复制一些东西,但是代码已经过时了。 有人可以帮我吗?

1 个答案:

答案 0 :(得分:2)

client.on("message", message => {
    if (message.content.indexOf(prefix) !== 0) {return false};

    const arguments = message.content.slice(prefix.length).trim().split(/ +/g);
    const command = arguments.shift().toLowerCase();

    if (command == "clear") {
        if (!message.member.hasPermission("MANAGE_MESSAGES")) return message.channel.send("You are not allowed to use this command.");
        if (!arguments[0]) return message.channel.send("Please provide a number between 2 and 100.")
        if (arguments[0] < 2 || arguments[0] > 100) return message.channel.send("Please provide a number between 2 and 100.")

        message.channel.bulkDelete(arguments[0]).then(messages => {
            message.channel.send(`Deleted ${messages.size} messages.`);
        }).catch(e => console.log(e));
    };
});