首页 > 解决方案 > Discord 机器人回复每次增加 1

问题描述

我的机器人每发送一个命令就会增加一个回复。(1 个响应,然后 2 个,依此类推)我该怎么做才能解决它?没有任何其他实例在运行,我已经更改了令牌。我需要停止它,并且我已经遵循了有关高级命令处理程序的多个教程,并且除了重复命令之外它还在工作。

main.js 代码:

,client.on('message', message =>{
if (message.author.bot) {
    console.log("Ignoring bot message.");
    return;
}
if(!message.content.startsWith(prefix) || message.author.bot) return

const args = message.content.slice(prefix.length).split(/ +/)
const command = args.shift().toLowerCase()

const baseFile ='command-base.js'
const commandBase = require(`./commands/${baseFile}`)

const readCommands = dir => {
    const files = fs.readdirSync(path.join(__dirname, dir))
    for (const file of files) {
        const stat = fs.lstatSync(path.join(__dirname, dir, file))
        if (stat.isDirectory()) {
            readCommands(path.join(dir, file))
        } else if (file !== baseFile) {
            const option = require(path.join(__dirname, dir, file))
            commandBase(client, option)
        }
            
        }
    }

add.js 代码:

    commands: ['add', 'addition'],
    expectedArgs: `<num1> <num2>`,
    permissionError: 'You need admin permissions to run this command.',
    minArgs: 2,
    maxArgs: 2,
    callback: (message, arguments, text) => {
        const num1 = +arguments[0]
        const num2 = +arguments[1]

        message.channel.send(`The sum is ${num1 + num2}`)
        return
    },
    permissions: [],
    requiredRoles: [],
}

标签: javascriptdiscord.jsbots

解决方案


推荐阅读