yujin
yujin

Reputation: 45

discord.py command that create embed

im trying to code a discord.py bot where you can create embeds through a command, something like the embed creation function in mimu bot. i tried to code it but it dont work, any ways to make it work?

async def embed_create(ctx):
    def check(message):
        return message.author == ctx.author and message.channel == ctx.channel

    await ctx.send('Enter your title.\nPut `none` if you do not want anything in this section.')
    await client.wait_for("message", timeout = 300.0, check=check)
    if message.content == "none":
      title = ""
    else:
      title = ("message")

    await ctx.send('Enter your title.\nPut `none` if you do not want anything in this section.')
    await client.wait_for("message", timeout = 300.0, check=check)
    if message.content == "none":
      desc = ""
    else:
      desc = ("message")

    embed = discord.Embed(title=title.content, description=desc.content, color=0xa9e9e9```

Upvotes: 0

Views: 303

Answers (1)

FusionSid
FusionSid

Reputation: 213

I figured out the problem and fixed it, here:

async def embed_create(ctx):
    def check(message):
        return message.author == ctx.author and message.channel == ctx.channel

    await ctx.send('Enter your title.\nPut `none` if you do not want anything in this section.')
    title = await client.wait_for("message", timeout = 300.0, check=check)
    title = title.content
    if title == "none":
      title = "** **" # it will still be empty but not give an empty error message
    else:
      title = title

    await ctx.send('Enter your title.\nPut `none` if you do not want anything in this section.')
    desc = await client.wait_for("message", timeout = 300.0, check=check)
    desc = desc.content
    if desc == "none":
      desc = "** **"
    else:
      desc = desc

    embed = discord.Embed(title=title, description=desc, color=0xa9e9e9)

    await ctx.send(embed=embed)

Upvotes: 1

Related Questions