Python
- 26 ответов
- 0 вопросов
20
Вклад в тег
@bot.command()
async def habr(ctx, arg=None):
await ctx.message.delete() # Удаляем наше сообщение.
emb = discord.Embed(title="Хабр", colour=discord.Color.orange()) # Инициализируем эмбед.
emb.add_field(name='Первое поле', value=f'Реально же первое!') # Добавляем поле.
msg = await ctx.send(embed=emb) # Отправляем сообщение и запоминаем что оно такое красивое есть.
await asyncio.sleep(2)
emb = msg.embeds[0] # Выдергиваем с нашего отправленного сообщения эмбед и пересобираем его так, как нужно нам.
for i, item in enumerate(emb.fields): # Перебираем поля в эмбеде. i - индекс(позиция); item - содержание.
if arg: # Если есть аргумент, то добавляем его в наше новое поле.
emb.add_field(name='Второе поле', value=f'{arg}')
else: # Если аргумента нету, то редактируем наше первое поле.
if "Первое поле" in item.name:
emb.set_field_at(index=i, name=item.name, value='Без аргумента? Жаль.', inline=item.inline)
await msg.edit(embed=emb) # Отправляем отредактированное сообщение.
@bot.event
async def on_message(message):
if message.author != bot.user: # Если автор сообщения НЕ бот.
if {i.lower().translate(str.maketrans('', '', string.punctuation)) for i in message.content.split(' ')} \
.intersection(set(json.load(open('slyhi.json')))) != set():
channel = bot.get_channel(894897187593551892)
await channel.send(f'[Выхваченное Сообщение]:~/// {message.author.mention}: {message.content}')
await bot.process_commands(message)
channels = [1231234234, 1231231234]
if message.channel.id in channels:
do_something()
@client.command(pass_context=True)
@commands.has_any_role(860824791610032189, 876086379665301534)
async def mute( ctx, member: discord.Member, time: int):
emb = discord.Embed(title="Участник Был Замучен!", colour=discord.Color.blue())
await ctx.channel.purge(limit=1)
emb.set_author(name=member.name, icon_url=member.avatar_url )
emb.set_footer(text="Его замутил {}".format(ctx.author.name ), icon_url=ctx.author.avatar_url )
await ctx.send(embed=emb)
muted_role = discord.utils.get(ctx.message.guild.roles, name="Muted")
await member.add_roles(muted_role)
# Спим X секунд, перед тем как снять роль.
await asyncio.sleep(time)
# Снимаем роль замученного.
await member.remove_roles(muted_role)