discord.py - 检查反应 Discord.py
问题描述
所以我想做一个文字游戏,每次调用命令的作者反应时都会编辑角色。到目前为止,我用于添加反应的代码:
@client.command()
async def test(ctx):
msg = await ctx.send('Hi')
up = '⬆'
down = '⬇'
left = '⬅'
right = '➡'
await msg.add_reaction(up)
await msg.add_reaction(down)
await msg.add_reaction(left)
await msg.add_reaction(right)
这会将向上箭头、向下箭头、向左箭头和向右箭头添加到消息“Hi”。我想看看是否有人点击了箭头,以及该人是否是该命令的作者。如果命令的作者单击箭头反应,我不知道如何获得。任何帮助,将不胜感激。
解决方案
如果您正在等待响应,请使用wait_for()
事件reaction_add
作为位置参数。
要将其限制为调用者,您可以创建一个检查并将其传递check
给wait_for()
. 检查将接受两个参数,您只需要比较是否ctx.author
与检查作者相同。
wait_for()
文档中有一个示例
推荐阅读
- swift - 使用 SwiftUI 离开视图时,如何以编程方式使 List 的 editMode 处于非活动状态?
- java - 如何在客户类中抛出 InvalidNameException
- javascript - React Data Grid (adazzle):渲染没有返回任何内容。这通常意味着缺少 return 语句。或者,不渲染任何内容,返回 null
- ios - 由于-5825,iPhone屏幕录制未能保存
- javascript - 如何仅在 javascript 中选择未格式化的文本?
- javascript - 防止退格和删除被香草JS中的输入事件“处理”
- javascript - 如何从数组中的一个点向外循环?
- java-8 - 无法使用 Joda Time API 将日期转换为 UTC
- angular - 如何使用日期时间选择器模块过滤掉白天?
- javascript - 在 API 调用中如果我单击提交按钮打开 200code 成功页面,否则在 ReactJS 中打开错误页面 404