其他命令不起作用。 (Python,Discord.py)

时间:2020-08-25 16:37:28

标签: python discord discord.py

@bot.event 
async def on_message(ctx) :
    file = openpyxl.load_workbook("level.xlsx")
    sheet = file.active
    exp = [100, 200, 400, 700, 1100, 1600, 2200, 2900, 3700, 4600, 5600]
    i = 1
    while True :
        if sheet["A" + str(i)].value == str(ctx.author.id) :
            sheet["B" + str(i)].value = sheet["B" + str(i)].value + 2
            if sheet["B" + str(i)].value >= exp[sheet["C" + str(i)].value - 1] :
                sheet["C" + str(i)].value = sheet["C" + str(i)].value + 1
                await ctx.channel.send("Level UP !!\nLevel : " + str(sheet["C" + str(i)].value) + "\nExp : " + str(sheet["B" + str(i)].value))
            file.save("level.xlsx")
            break
        if sheet["A" + str(i)].value == None :
            sheet["A" + str(i)].value = str(ctx.author.id)
            sheet["B" + str(i)].value = 0
            sheet["C" + str(i)].value = 1
            file.save("level.xlsx")
            break
        i += 1

此代码效果很好,但是它阻止了其他命令的工作。

我将此代码放在末尾。但是其他命令仍然不起作用。

如何解决该错误?

1 个答案:

答案 0 :(得分:2)

阅读this

在代码末尾使用await bot.process_commands(message),与其他命令一起运行事件函数。