#python #discord #discord.py
Вопрос:
Я не знаю,что я делаю неправильно, чтобы получить эту ошибку…так как я ждал того, чего следовало ожидать, если только я этого не сделал, и я просто не могу этого видеть? Хотя в нем говорится, что он включен в функцию банка обновлений, когда я ее даже не использовал, и эта ошибка возникает только при использовании этой команды.
Вот код:
async def use_this(user,item_name,amount,price = None):
item_name = item_name.lower()
name_ = None
for item in mainshop:
name = item["name"].lower()
if name == item_name:
name_ = name
if price==None:
price = 0* item["price"]
break
if name_ == None:
return [False,1]
cost = price*amount
users = await get_bank_data()
bal = await update_bank(user)
try:
index = 0
t = None
for thing in users[str(user.id)]["bag"]:
n = thing["item"]
if n == item_name:
old_amt = thing["amount"]
new_amt = old_amt - amount
if new_amt < 0:
return [False,2]
users[str(user.id)]["bag"][index]["amount"] = new_amt
t = 1
break
index =1
if t == None:
return [False,3]
except:
return [False,3]
with open("mainbank.json","w") as f:
json.dump(users,f)
await update_bank(user,cost,"wallet")
return [True,"Worked"]
@client.command()
async def hunt(ctx,item = ['rifle','Rifle'],amount = 1):
user = ctx.author
users = await get_bank_data()
res = await use_this(ctx.author,item,amount)
rifle = "rifle"
if amount > 1:
await ctx.reply("You cant use multiple rifles,it would be too heavy for you!")
elif item == "rifle":
res = await use_this(ctx.author,item,amount)
if not res[0]:
if res[1]==1:
await ctx.reply(f"{ctx.author.mention} That Object isn't there!")
return
if res[1]==2:
await ctx.reply(f"{ctx.author.mention} You don't have {amount} {item} in your bag.")
return
if res[1]==3:
await ctx.reply(f"{ctx.author.mention} You don't have {item} in your bag.")
return
aninames = ['bear','rabbit','wolf']
animals = random.choice(aninames)
earnings = random.randrange(5000)
await ctx.reply(f"You used hunted {animals} for {earnings} coins!,you lost the rifle in the process tho ..")```
Комментарии:
1. Не могли бы вы, пожалуйста, опубликовать полную обратную связь?
Ответ №1:
Попробуйте сделать
import tracemalloc
tracemalloc.start()
затем вы должны получить полную обратную связь, чтобы вам
было легче помочь
Ответ №2:
Вам нужно добавить await
в update_bank
Так что иди и сделай это:
await update_bank(...)
Примечание: поместите внутрь все, что нужно, например ctx.author.
Когда вы увидите это
update_bank(...)
Комментарии:
1. Его ждут повсюду…