作者:mobiledu2502906927 | 来源:互联网 | 2022-12-08 13:24
1> Patrick Haug..:
顺便说一句,假设您正在启动该项目,并且已经在使用重写文档,请确保您使用的是重写版本。这里有一些问题,涉及如何确定以及如何获得(如果没有的话),但是记录得更好并且更易于使用。我在下面的回答假设您正在使用discord.py-rewrite
Message.reactions
是的列表Reaction
。您可以使用以下命令将反应映射到其计数
{react.emoji: react.count for react in message.reactions}
您可以在发布消息后立即对消息作出反应:
@bot.command()
async def poll(ctx, *, text):
message = await ctx.send(text)
for emoji in ('', ''):
await message.add_reaction(emoji)
您可以使用Message.pin
:await message.pin()
我不确定“ user
tags
”的意思。你是说角色吗?
编辑1:
我会把你的命令写成
@bot.command()
async def create_poll(ctx, text, *emojis: discord.Emoji):
msg = await ctx.send(text)
for emoji in emojis:
await msg.add_reaction(emoji)
请注意,这仅适用于自定义表情符号,即您已添加到自己服务器中的discord.py
表情符号(这是因为对Unicode表情符号和自定义表情符号的处理不同。)
!create_poll "Vote in the Primary!" :obamaemoji: :hillaryemoji:
假设这两个表情符号在您发送命令的服务器上。
编辑2:
使用新的commands.Greedy
转换器,我将像这样重写上面的命令:
@bot.command()
async def create_poll(ctx, emojis: Greedy[Emoji], *, text):
msg = await ctx.send(text)
for emoji in emojis:
await msg.add_reaction(emoji)
因此,如果没有引号,调用会更加自然:
!create_poll :obamaemoji: :hillaryemoji: Vote in the Primary!