如何解决如何使命令仅在另一个discord.py
我正在尝试使用discord.py制作俄罗斯轮盘机器人 仅当有人使用“开始”启动游戏后,如何才能使“加入”和“射击”命令可用?
解决方法
使命令仅在使用其他命令后才可用的一种方法是在该命令内创建一个全局变量,然后在下一个命令中调用它,这样,如果不在其中使用它们,将会出错。正确的顺序。
示例:
@commands.command()
async def test(ctx):
global x
x = True
@commands.command()
async def test2(ctx):
print(x)
如果在 test 之前使用 test2 ,则会出现以下错误:
NameError: name 'x' is not defined
您可以使用 try 来解决此问题
@commands.command()
async def start(ctx):
global game
game = True
@commands.command()
async def join(ctx):
try:
print(game)
except NameError:
await ctx.send('There is no game going on')
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。