@danys_kun

Почему discord.py команда не работает?

Сама ошибка:
Ignoring exception in command __dange:
Traceback (most recent call last):
  File "C:\Users\andro\AppData\Local\Programs\Python\Python38-32\lib\site-packages\discord\ext\commands\bot.py", line 903, in invoke
    await ctx.command.invoke(ctx)
  File "C:\Users\andro\AppData\Local\Programs\Python\Python38-32\lib\site-packages\discord\ext\commands\core.py", line 847, in invoke
    await self.prepare(ctx)
  File "C:\Users\andro\AppData\Local\Programs\Python\Python38-32\lib\site-packages\discord\ext\commands\core.py", line 784, in prepare
    await self._parse_arguments(ctx)
  File "C:\Users\andro\AppData\Local\Programs\Python\Python38-32\lib\site-packages\discord\ext\commands\core.py", line 690, in _parse_arguments
    transformed = await self.transform(ctx, param)
  File "C:\Users\andro\AppData\Local\Programs\Python\Python38-32\lib\site-packages\discord\ext\commands\core.py", line 535, in transform
    raise MissingRequiredArgument(param)
discord.ext.commands.errors.MissingRequiredArgument: message is a required argument that is missing.


Без вот этого вот кода, всё работает хорошо. Но он нужен(может я неправильно его реализую?)
@client.command(aliases = ['dange', 'dan'])
async def __dange(ctx, message):
	for row in cursor.execute(f"SELECT exp,lvl,cash,hp,maxattack,minattack FROM users WHERE id={message.author.id}"):
		if row[1] > 0:
			namedungeon = 'Dead city dungeon'
			unitsel = random.randint(1, 100)
			def unitselect():
				global unit, unithp, unitmaxattack, unitminattack
				if unitsel in range(76, 100) and hp > 0:
					unit = 'Skeleton Cowboy'
					unithp = 160
					unitmaxattack = 55
					unitminattack = 45
				elif unitsel in range(1, 75) and hp > 0:
					unit = 'Skeleton Cowboy'
					unithp = 160
					unitmaxattack = 55
					unitminattack = 45
			unitselect()
			userhp = row[3]
			userminattack = row[5]
			usermaxattack = row[4]
			flag = True
			while flag:
				if userhp > 0:
					userattack = random.randint(userminattack, usermaxattack)
					unitattack = random.randint(unitminattack, unitmaxattack)
					userhp = userhp - unitattack
					unithp = unithp - userattack
					if userhp > 0 and unithp < 0:
						embed = discord.Embed(title='Информация о бое', color=discord.Color.blue())
						embed.add_field(name='Вы победили', value='кек', inline=False)
						flag = False
					elif userhp < 0 and unithp > 0:
						embed = discord.Embed(title='Информация о бое', color=discord.Color.blue())
						embed.add_field(name='Вы проиграли', value='кек', inline=False)
					    flag = False
					elif userhp < 0 and unithp < 0:
						embed = discord.Embed(title='Информация о бое', color=discord.Color.blue())
						embed.add_field(name='Ничья', value='ы', inline=False)
						flag = False
					elif userhp > 0 and unithp > 0:
						flag = True
		else:
			await ctx.send('Извени, но у тебя слишком маленький уровень(')
  • Вопрос задан
  • 213 просмотров
Пригласить эксперта
Ответы на вопрос 2
@UberPool
Python/JS coder
у тебя в ошибке всё написано discord.ext.commands.errors.MissingRequiredArgument: message is a required argument that is missing.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы