Переписанная ветвь discord.py больше не существует. Теперь это просто v1.
Bot.wait_for
s check
Предикат для проверки того, что ждать, получает только переданные параметры ожидаемого события. Это означает, что, поскольку вы ожидаете событие сообщения, ему будет передан только один аргумент сообщения.
Один из способов достижения sh того, что вы хотите, - это использовать метод-обертку, который обрабатывает context
параметр и возвращает предикат проверки, например:
def wrapper(context):
def check_msg(message):
return context.author == message.author and context.channel == message.channel
return check_msg
await bot.wait_for("message", timeout=180, check=wrapper(ctx))