我试图在python中创建一个基本的文本冒险游戏,并且正在努力创建一个健康系统。是否有可能让if语句不断检查条件是否仍然为真,并在条件为假时结束代码?像
这样的东西health = 5
if health < 0:
game code
#at some point the health integer drops to zero and the program ends
答案 0 :(得分:1)
您可以执行反向操作,并查看while语句是否中断。例如,
while health > 0:
game works
else:
character dies
您基本上需要在每个动作的开头或结尾检查健康状况 如果健康状况高于零,则程序继续执行其程序。如果没有,程序没有。
这将是一个很多处理,但大多数文字冒险不需要很快。
答案 1 :(得分:0)
这是一个更先进的医疗系统,可能比你想要的更多,但可能会有所帮助:
import os
class GameStatus:
def __init__(self):
self.health = 100
def reduce_health(self):
self.health = self.health - 10
if self.health <= 0:
game_over()
def main_game():
game_status = GameStatus()
#...
# when player gets hurt
game_status.reduce_health()
# ...
def game_over():
print "game over, sorry"
os._exit(1)