python - 如何制作不跨服务器狙击的狙击命令(discord.py)
问题描述
我正在尝试使用 discord.py 在 python 中创建一个命令,这是您的标准狙击命令,但我在网上看到的所有方法都有一个问题。它们都有一个全局狙击变量,例如,如果我进入服务器 A 并键入“hello”然后删除该消息,然后转到服务器 B 并键入狙击命令,它会说最后一条消息是“hello”。有没有简单的方法来解决这个问题?编辑 - 让它工作!(不知何故)感谢任何帮助过的人
解决方案
只需添加一个处理程序。
像这样做。
contentguild = self.last_msg.guild
guild = ctx.guild
做一个 if 语句:
if contentguild.id != guild.id:
await ctx.reply("There is no message to snipe!",
mention_author=False)
return
我假设你已经设置了狙击命令,所以使用这些代码你应该能够让它工作。如果你真的有问题对这个消息做出反应,我可以给你狙击命令的整个代码,但我希望你先自己尝试一下。;-)
推荐阅读
- android - 签署 Android apk 时从管道访问 Azure DevOps 上的安全文件
- javascript - 为什么这个设置器在我代理它时没有给我截获的值?
- java - Java Jpa 自定义实体属性转换器和规范
- python - 熊猫移动平均计算缺少日期?
- java - 合并 HashMap 的键
- python-3.x - 在从 Big Query 读取的 Apache 光束管道中将浮点数转换为字符串
- encryption - 使用智能合约作为 ACL 加密/解密存储在 IPFS 上的数据
- php - 在订单确认邮件中添加子订单信息(WooCommerce / Dokan)
- python - 从不同屏幕截取的屏幕截图的不同 RGB 值
- android - 如何使用 SOTO 在 iOS 上调用 AWS Web 服务(API 网关)?