0

Python ゲームにヘルス システムを追加する予定です。game_state[''] にしたい。あなたが受けたダメージに応じて健康システムを作成するにはどうすればよいですか?

このような:

    print "Your health is", game_state['health']
    print "Zombie attacks"
    global health = game_state['health'] - 10
    print "Your health is", game_state['health'] - 10

そのようなものは機能しますか?グローバルは使えますか?

4

2 に答える 2

1

これをやろうとしていますか?

game_state['health'] = game_state['health'] - 10
于 2012-12-02T17:59:07.113 に答える
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)

前述したように、これはやり過ぎです。特に、ゲーム ループが 1 つしかなく、各ループの最後に 1 回だけヘルスをチェックする必要がある場合はなおさらですが、複雑さを追加し始めると役立つ可能性があります。

于 2012-12-02T19:28:34.577 に答える