# Подключаем библиотеку
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
и вот ошибка, не понимаю в чём дело вроде написал команду баланс