Python 如何使用同一个装饰器制作2个on_成员工作事件? @client.event 成员加入时的异步定义(成员): 全球欢迎频道 全局自动调节器 channel\u id=welcome\u channel\u dict[str(member.guild.id)] 嵌入=discord.embed(color=discord.color.green()) embed=discord.embed(title=“Member Joined”,color=0x2EC71,description=f'{Member.notice}已加入**{Member.guild}**!祝您在这里过得愉快!:tada:') 嵌入.set_缩略图(url=member.avatar_url) 等待客户端。获取通道(通道id)。发送(嵌入=嵌入) role=discord.utils.get(member.guild.roles,id=autoroles[str(member.guild.id)]) 等待成员。添加_角色(角色)

Python 如何使用同一个装饰器制作2个on_成员工作事件? @client.event 成员加入时的异步定义(成员): 全球欢迎频道 全局自动调节器 channel\u id=welcome\u channel\u dict[str(member.guild.id)] 嵌入=discord.embed(color=discord.color.green()) embed=discord.embed(title=“Member Joined”,color=0x2EC71,description=f'{Member.notice}已加入**{Member.guild}**!祝您在这里过得愉快!:tada:') 嵌入.set_缩略图(url=member.avatar_url) 等待客户端。获取通道(通道id)。发送(嵌入=嵌入) role=discord.utils.get(member.guild.roles,id=autoroles[str(member.guild.id)]) 等待成员。添加_角色(角色),python,discord.py,Python,Discord.py,我试图实现的目标:现在,只有当人们也启用了欢迎信息时,自动播放功能才起作用。我希望它能单独工作。您的客户应该是Bot类 从discord.ext.commands导入Bot client=Bot(命令前缀=“!”) 以后的代码 async def on_member_join(成员): #做点什么 client.add_侦听器(在成员加入时) 成员加入时的异步定义(成员): #多做点什么 client.add_侦听器(在成员加入时) 这样我就可以在上面的一个窗口中显示欢迎消息,在下面的一个窗口

我试图实现的目标:现在,只有当人们也启用了欢迎信息时,
自动播放功能才起作用。我希望它能单独工作。

您的客户应该是
Bot

从discord.ext.commands导入Bot
client=Bot(命令前缀=“!”)
以后的代码

async def on_member_join(成员):
#做点什么
client.add_侦听器(在成员加入时)
成员加入时的异步定义(成员):
#多做点什么
client.add_侦听器(在成员加入时)

这样我就可以在上面的一个窗口中显示欢迎消息,在下面的一个窗口中显示autorole了?@Rensjuh两个函数分别工作,所以当我这样做时,它会说函数已经定义了@client.event(),在on_member_join的上方。删除它
@client.event
async def on_member_join(member):
    global welcome_channel_dict
    global autoroles
    channel_id = welcome_channel_dict[str(member.guild.id)]
    embed=discord.Embed(colour=discord.Colour.green())    
    embed=discord.Embed(title="<:memberjoined:778987095837769759> Member Joined", color=0x2ECC71, description=f'{member.mention} joined **{member.guild}**! Enjoy your stay!  :tada:')
    embed.set_thumbnail(url=member.avatar_url)    
    await client.get_channel(channel_id).send(embed=embed)
    
    role = discord.utils.get(member.guild.roles, id=autoroles[str(member.guild.id)]) 

    await member.add_roles(role)