一次等待两个消息的表情符号反应

时间:2020-11-01 18:10:41

标签: python discord discord.py

我正在寻找一个命令,使机器人在2个不同的通道中等待来自用户的2条不同消息上的表情符号反应,但遇到一个问题,机器人首先在第一条消息上等待响应,然后在第二条消息上等待响应,但第二条消息却没有响应时间。我在代码中使用了两个wait_for。因此,一切正常,首先在代码中先执行wait_for,然后再进行第二次,但是我想一次使它工作。

                zapis = await chat_room.send(embed=embed_chat)
                await zapis.add_reaction('\U00002611')
                def check_z(reaction, user):
                    return (reaction.message.id == zapis.id) and (user.id == ctx.author.id) and (
                            str(reaction) == '\U00002611')
                try:
                    reaction, user = await self.client.wait_for('reaction_add', check=check_z, timeout=2400)
                except asyncio.TimeoutError:
                    await ctx.send("Timed out")
                if str(reaction) == '\U00002611':
                    ...
                def check(reaction, user):
                    return (reaction.message.id == controller.id) and (user.id == ctx.author.id) and (
                            str(reaction) in reactions)
                try:
                    reaction, user = await self.client.wait_for('reaction_add', check=check, timeout=2400)
                except asyncio.TimeoutError:
                    await ctx.send("Timed out")
                    return
                if str(reaction) == '❌':
                    ...
                if str(reaction) == '✅':
                    ...
                if str(reaction) == '?':
                    ...

0 个答案:

没有答案