Python 一场绞刑的游戏,但信息不是';t定义[discord.py]

Python 一场绞刑的游戏,但信息不是';t定义[discord.py],python,discord.py,discord.py-rewrite,Python,Discord.py,Discord.py Rewrite,我想做的事:使用discord.py-rewrite制作一个刽子手游戏 问题:我不确定此错误来自何处 discord.ext.commands.errors.CommandInvokeError: Command raised an exception: NameError: name 'message' is not defined 此外,我还希望对代码进行评估,以防我遗漏了其他内容 主代码(bot.py): #此处的其他导入 从刽子手进口刽子手 游戏=刽子手 @命令(别名=[“hm”])

我想做的事:使用discord.py-rewrite制作一个刽子手游戏

问题:我不确定此错误来自何处

discord.ext.commands.errors.CommandInvokeError: Command raised an exception: 
NameError: name 'message' is not defined
此外,我还希望对代码进行评估,以防我遗漏了其他内容

主代码(bot.py):

#此处的其他导入
从刽子手进口刽子手
游戏=刽子手
@命令(别名=[“hm”])
异步def hangman(ctx,args):
game_message=“”
如果len(args)>1:
如果参数[1]=“开始”:
开始游戏
game_message=f“随机选择了一个单词(全部小写)。使用`{prefix}hangman x`(x是猜测的字母)猜测字母”
等待ctx发送(游戏信息)
其他:
游戏.猜测(消息.内容)
client.run('token')
hangman.py:

#导入和所有这些东西
阶级刽子手:
所选单词=“”
猜字母=“”
剩余猜测=6
以open(“hangman.txt”,“r”)作为f:
read=f.read()
words=read.split(“\n”)
has_end=False
你赢了吗
def开始_游戏(自我):
random.seed()
关键字=random.randint(1,len(self.words))
self.selected_word=self.words[key]
new_string=“”
对于范围(0,len(自选单词))中的i:
新字符串+=“?”
self.gustized\u字母=新的\u字符串
def获取游戏状态(自我):
#返回包含当前游戏状态以及玩家是否获胜的字符串
message=“”
如果不是self.has_结束:
#打印每个字母,后跟空格
letters=“”
对于范围(0,len(自我猜测字母))内的i:
字母+=自我。猜字母[i]+''
message='{}左猜测\n'。格式(self.remaining_猜测)
信息+=信件
如果self.has_结束且self.has_获胜:
消息+='\n您赢了!您正确猜测了“+”`{}`。格式(self.selected\u单词)
如果self.has_已结束,而不是self.has_赢得:
消息+='\n您丢失了!正确的单词是“+”`{}`。格式(self.selected_单词)
回信
def猜测(自我、消息):
args=message.split(“”)
guess=“”
包含_guess=False
如果len(args)>1:
guess=args[1]
对于范围(0,len(自选单词))中的i:
如果猜测[0]==自选单词[i]:
self.guessed_letters=self.guessed_letters[:i]+猜测[0]+self.guessed_letters[i+1:]
包含_guess=True
如果不包含以下内容:
自我剩余猜测-=1
#检查没有猜到的字母
未使用的字母=假
对于自猜字母中的字母:
如果字母=='?':
未使用的字母=真
#这名运动员赢得了比赛
如果不是未使用的字母:
self.has_end=True
self.has_won=真
#没有更多的猜测,所以玩家输了
如果self.u猜测<0:
self.has_end=True
self.has_won=错误

在bot.py else语句中,您编写了message.content,但未定义消息。

是的,可以通过
ctx.message轻松获取消息对象。