【发布时间】:2019-06-26 07:41:06
【问题描述】:
我正在尝试检查我的一个 wait_for 返回是否是某个表情符号。
我试过 str(one.reaction.emoji),我试过 one.reaction.emoji
charm = discord.Embed(description=f"React With The Corresponding Emoji, What You Wish To Edit.", color=0xff89ff)
charm.set_author(name=f"{user.name}")
charm.set_thumbnail(url=str(user.avatar_url))
charm.add_field(name="Name", value=":one:")
charm.add_field(name="Sexual Preference", value=":two:")
charm.add_field(name="Biography", value=":three:")
charm.add_field(name="Hobbies", value=":four:")
charm.add_field(name="Location", value=":five:")
editmsg = await user.send(embed=charm)
await editmsg.add_reaction(emoji="1\N{combining enclosing keycap}")
await editmsg.add_reaction(emoji="2\N{combining enclosing keycap}")
await editmsg.add_reaction(emoji="3\N{combining enclosing keycap}")
await editmsg.add_reaction(emoji="4\N{combining enclosing keycap}")
await editmsg.add_reaction(emoji="5\N{combining enclosing keycap}")
one = bot.wait_for("reaction_add", check=onecheck)
if str(one.reaction.emoji) == "1\N{combining enclosing keycap}":
await user.send("What Do You Wish To Change Your Name To?")
【问题讨论】:
-
你能分享你的
onecheck函数的定义吗? -
def onecheck(reaction, user, m): return user == message.author and str(reaction.emoji) == "1\N{combining enclosing keycap}" and isinstance(m.channel, discord.abc.PrivateChannel) and m.author.id == user.id -
支票只会收到
reaction和user。 Here is some code I wrote for generating checks for reactions -
那么我会用你的支票来检查返回的表情符号是否是我想要的,如果是的话怎么办? @PatrickHaugh
-
通过
check=reaction_check(message=editmsg, emoji=[f"{i}\N{combining enclosing keycap}" for i in range(1,6)], author=user)。emoji可以是 unicode 表情符号或Emoji对象或序列。
标签: python discord.py discord.py-rewrite