import discord
from discord.ext import commands
#these are the modules needed
#Note: I don't want an if statement EX if "@Bot" == True
await.message.channel.send('words')

La razón por la que no quiero esto es porque lo probé y cuando ordeno el comando Prefixhelp, la "palabra" siempre está en la segunda línea de cada comando que el bot puede hacer, lo cual es molesto, así que alguien puede darme rápidamente el código para que no haga eso? Gracias.

2
Jack15g 22 ene. 2021 a las 20:26

1 respuesta

La mejor respuesta

Una forma fácil de obtener una respuesta cuando algún usuario etiqueta su bot sería usar un decorador en la instancia del bot:

from discord.ext import commands 

client = commands.Bot(command_prefix=commands.when_mentioned_or("!"))

Pero si solo desea que las personas puedan simplemente enviar un mensaje que etiquete su bot y este devuelva el prefijo, simplemente puede verificar con la función mentioned_in para ver si el bot se menciona en el mensaje.

@client.event
async def on_message(message):
    if client.user.mentioned_in(message):
        await message.channel.send("The prefix is '!'")
0
Shunya 22 ene. 2021 a las 17:57