Итак, я пытаюсь сохранить идентификаторы пользователей и добавлять их оценки, когда они выполняют команду. Но проблема, которую я получаю, заключается в том, что пользователь дважды входит в систему и не добавляет очков. Вот что происходит в файле json:
{"272356126391238536": {"experience": 1}, "272356126391238536": {"experience": 1}}
Это часть моего кода, которая определяет обновление и добавляет:
async def update(amount, user):
if not user.id in amount:
amount[user.id] = {}
amount[user.id]['experience'] = 0
async def add(amount, user, exp):
amount[user.id]['experience'] += exp
Это часть команды что счет обновляется с:
await update(buffer, ctx.message.author)
await add(buffer, ctx.message.author, 1)
Когда я меняю «.id» на «.name», он работает нормально, но проблема с именем заключается в том, что если пользователь меняет свое имя, его старый счет будет потерян .