Discord.py 命令在频道或设置频道中说

时间:2021-06-20 03:11:21

标签: python discord.py

我一直在测试“say”命令并尝试将其配置为使用 #channel 将消息发送到某个频道,问题是当我不写频道时:“!说文本”,在控制台它不断向我显示我需要放置一个通道,当通道未写入时如何更改变量“通道”。感谢阅读。

@bot.command()
async def say(ctx, channel:discord.TextChannel,* , message):
    if not channel:
        channel=()
    embed=discord.Embed(
        description=(message),
        color=discord.Color.blue()
    )
    await channel.send(embed=embed)
    await ctx.message.delete()

1 个答案:

答案 0 :(得分:0)

你可以试试这个。

@bot.command()
async def say(ctx, message):
    args = message.split(' ')
    channel = args[0]
    if type(channel) is not discord.TextChannel:
        channel = ctx.channel
    else:
        message = message.replace(channel,'')
    embed=discord.Embed(
        description=(message),
        color=discord.Color.blue()
    await channel.send(embed=embed)
    await ctx.message.delete()