Хорошо, я использую базу данных SQLite для этой системы валюты бота, и я пытаюсь создать новую команду, в которой она выдала бы вам математическую задачу, и если вы ответите правильно, вы заработаете деньги. Сейчас моя проблема в том, что даже если я наберу правильный ответ, он скажет мне, что я ошибаюсь. Это мой код:
def check(author):
def inner_check(message):
if message.author != author:
return False
try:
int(message.content)
return True
except ValueError:
return False
return inner_check
@client.command(pass_context=True)
async def work(ctx):
USER_ID = ctx.message.author.id
no1 = random.randint(1,1000)
no2 = random.randint(1,1000)
answer = no1 + no2
await ctx.send(f'What is **{no1}** + **{no2}**?')
msg = await client.wait_for('message', check=check(ctx.author), timeout=None)
if msg.content == answer:
SQL.execute('update Accounts set balance = balance + ? where user_id = ?', (100, USER_ID))
await ctx.send(f'Good work, {ctx.message.author.mention}. You earned 100 {C_NAME}')
else:
SQL.execute('update Accounts set balance = balance - ? where user_id = ?', (100, USER_ID))
await ctx.send(f"Terrible work, {ctx.message.author.mention}. I'm cutting your paycheck and you lost 100 {C_NAME}")