@Dapthereal

Я написал функцию однако дискорд не видит функцию. В чём может быть проблема?

# Подключаем библиотеку
import discord
from discord.ext import commands
from discord.utils import get
from config import *
import json

client = commands.Bot(command_prefix=PREFIX, intents=discord.Intents.all())

@client.command()
async def ping(ctx):
    await ctx.send("pong!")
    await ctx.send(ctx.author.name)



client.run(token=TOKEN)




async def get_user_wallet(user_id):#Данная функция открывает наш json файл где хранятся кошельки пользователей, далее она проверяет наличие данного id пользователя в базе данных, если его нет, то функция добавляет его в базу данных, и добавляет ему константу в которой находится словарь с его стартовым балансом и прочей информацией которую вы пожелаете записать, потом записывает это в файл json, далее функция просто возвращает словарь с данными пользователя чей id был получен
    user_id = str(user_id)

    with open("wallets.json", "r") as file:
        users_wallets = json.load(file)

    if user_id not in users_wallets.keys():
        users_wallets[user_id] = WALLET_DEFAULT

    with open("wallets.json", "w") as file:
        json.dump(users_wallets, file)

    return users_wallets[user_id]

#Эта функция всё так же открывает базу данных и проверяет наличие полученного пользователя в ней, но в добавок записывает в полученный параметр новое полученное значение
async def set_user_wallet(user_id, parameter, new_value): #что бы изменять параметры того или иного кошелька
    user_id = str(user_id)

    with open("wallets.json", "r") as file:
        users_wallets = json.load(file)

    if user_id not in users_wallets.keys():
        users_wallets[user_id] = WALLET_DEFAULT

    users_wallets[user_id][parameter] = new_value

    with open("wallets.json", "w") as file:
        json.dump(users_wallets, file)


@client.command()
async def balance(ctx):
    user_wallet = await get_user_wallet(ctx.author.id)
    await ctx.send(f"**Ваш баланс**: {user_wallet['balance']}")


@client.event
async def on_ready():
    print("Бот запустился!")


Вот мой код

discord.ext.commands.bot: Ignoring exception in command None
discord.ext.commands.errors.CommandNotFound: Command "balance" is not found

и вот ошибка, не понимаю в чём дело вроде написал команду баланс
  • Вопрос задан
  • 74 просмотра
Пригласить эксперта
Ответы на вопрос 1
@john_does13
client.run(token=TOKEN)
Эта строка должна быть в самом конце вашего кода. В этом и есть проблема вашей ошибки.
Во-вторых, используйте библиотеку disnake т.к discord.py устарела, она больше не поддерживается.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы