首页 > 解决方案 > When I have two different embed commands with different urls only one of them will work- Can someone help figure this out for me?

问题描述

@client.event
async def on_message(message):
    if message.content.startswith('!axb'):
        embed = discord.Embed(title="Axb :sparkles:", description="9b9t Bot Dev", color=0xf188c9)
        embed.set_image(url='insert url')
        await message.channel.send(embed=embed)

@client.event
async def on_message(message):
    if message.content.startswith('!opal'):
        embed = discord.Embed(title="opal :sparkles:", description="9b9t Bot Dev", color=0xf188c9)
        embed.set_image(url='insert url')
        await message.channel.send(embed=embed)

标签: pythondiscorddiscord.py

解决方案


Only the last on_message event will work, why don't you use a simple elif statement?

@client.event
async def on_message(message):
    if message.content.startswith('!axb'):
        embed = discord.Embed(title="Axb :sparkles:", description="9b9t Bot Dev", color=0xf188c9)
        embed.set_image(url='insert url')
        await message.channel.send(embed=embed)

    elif message.content.startswith('!opal'):
        embed = discord.Embed(title="opal :sparkles:", description="9b9t Bot Dev", color=0xf188c9)
        embed.set_image(url='insert url')
        await message.channel.send(embed=embed)

推荐阅读