Как забанить автора с помощью on_message? - PullRequest
0 голосов
/ 27 октября 2019

Я пытаюсь запретить моему боту кого-то, кто отправляет сообщение '$ pull', и если они получают 1 в randint (1,6).

        chamber = randint(1,6)
        if chamber == 1:
            await message.channel.send("%s got hoodbridged" % message.author)
            game_active = False

Это то, что у меня есть, но япытаясь также заставить его забанить человека, если камера == 1. Спасибо!

1 Ответ

1 голос
/ 27 октября 2019

Я считаю, что вы ищете Member.ban (). Вы можете прочитать больше об этом в документации здесь

Для использования on_message:

@client.event
async def on_message(message):
    if message.content.startswith('$pull'):
        chamber = randint(1,6)
        if chamber == 1:
            await message.channel.send("%s got hoodbridged" % message.author)
            await message.author.ban()

Если вы должны использовать класс discord.commands.Bot для использования командытогда это будет выглядеть так:

prefix = "$"
client = commands.Bot(command_prefix=prefix)

@client.command(pass_context=True)
async def pull(ctx):
    chamber = randint(1,6)
    if chamber == 1:
        await ctx.channel.send("%s got hoodbridged" % ctx.author)
        await ctx.author.ban()
...