我想知道是否可以将文本从txt文件显示到pygame屏幕上。我正在开发游戏,我正试图在游戏中显示文本文件中的说明。
以下是我在下面所做的事情:
def instructions():
instructText = instructionsFont.render(gameInstructions.txt, True, WHITE)
screen.blit(instructText, ((400 - (instructText.get_width()/2)),(300 - (instructText.get_height()/2))))
然而我收到错误:
line 356, in instructions
instructText = instructionsFont.render(pongInstructions.txt, True, WHITE)
NameError: name 'pongInstructions' is not defined
然而,我的尝试是所有的反复试验,因为我实际上不确定如何做到这一点...非常感谢任何帮助!
答案 0 :(得分:0)
gameinstructions
未定义,因为python认为它是变量。
告诉python它是一个字符串,你需要把它放在引号中:
instructText = instructionsFont.render("gameInstructions.txt", True, WHITE)
然而,这可能不是你想要的。你想要做的是阅读文件。为此,您应该使用with
语句安全地打开和关闭文件:
with open("gameInstructions.txt") as f:
instructText = instructionsFont.render(f.read(), True, WHITE)
我目前无法尝试代码,但如果pygame无法同时处理多行文本,则可能需要循环遍历这些行:
with open("gameInstructions.txt") as f:
for line in f:
instructText = instructionsFont.render(line, True, WHITE)