-1

名前と健康状態だけで 2 人の架空の戦闘機を定義する簡単なプログラムを作成しようとしています。

今、これは私が書いたものです:

import random

def main():
    pass

if __name__ == '__main__':
    main()

hpRed = 20
hpBlu = 20

def attack():
    damage = random.randrange(1,3)

    return hpRed - damage
    return hpBlue - damage

def fighterRed(name, hpRed):
    print(str(name) + " has " + str(hpRed) + " health left.")

def fighterBlue(name, hpBlu):
    print(str(name) + " has " + str(hpBlu) + " health left.")

def battle():
    fighterRed("Branden",hpRed)
    fighterBlue("Alex",hpBlu)

    while ((hpRed > 0) and (hpBlu > 0) is True):
        attack()

    else:
        print("The battle is over!")

        if (hpRed > 0):
            return "Red Player is victorious!"
        else:
            return "Blue Player is victorious!"

battle()

これまでのところ、「割り当て前に参照されたhpRed」というエラーが常に発生します。hpRed と hpBlu の値を適切に渡すには、何を変更すればよいですか?

4

3 に答える 3

1

実際にはどちらのプレイヤーの HP にも変更を加えていません。attack() 関数を見て、変数のチェックを開始します。

于 2013-11-01T18:30:09.700 に答える