#python #events #discord #discord.py #bots
Вопрос:
@client.event
async def on_message(message):
if message.content.startswith('Some bad word'):
guild = ctx.guild
await message.channel.send(f'%s, ou, you said bad word. I have to mute you for 1 hour.')
mutedRole = discord.utils.get(guild.roles, name='Muted')
await member.add_role(mutedRole)
await asyncio.sleep(3600)
await member.remove_roles(mutedRole)
Всем привет! Я не могу создать событие, которое отключает участника, написавшего плохое слово в чате, потому что on_message не принимает аргументы member, ctx и т.д. Что мне делать, чтобы создать это событие «Модерации»?
Ответ №1:
Пожалуйста, взгляните на документы, message
там есть все, что вам нужно. Вы можете заменить ctx.guild
на message.guild
и member
на message.author
.
https://discordpy.readthedocs.io/en/master/api.html ?выделить =сообщение #разногласие.Сообщение
guild = message.guild
await message.channel.send(f'%s, ou, you said bad word. I have to mute you for 1 hour.')
mutedRole = discord.utils.get(guild.roles, name='Muted')
await message.author.add_role(mutedRole)
await asyncio.sleep(3600)
await message.author.remove_roles(mutedRole)