独学で Python を学んでいるのですが、現在取り組んでいる単純なゲーム プロジェクトで問題が発生しました。
ゲーム エンジンによって実行されているルームとは別のモジュールに、プレーヤーの統計情報を保持したいと考えています。問題は、別のモジュールから属性を設定しようとするとPlayer
、新しい属性が保存されず、元の属性がインスタンス化されることです。
ここにモジュールのPlayer
クラスがありますentities
class Player(object):
def __init__(self):
self.name = ' '
self.hp = 0
self.current_hp = 0
self.strength = 0
self.dexterity = 0
self.constitution = 0
rooms
そして、モジュール内の属性を操作してテストする方法を次に示します
class CharacterCreation(Scene):
def enter(self):
character = entities.Player()
character.hp = 10
print character.hp
return 'barracks'
class Barracks(Scene):
def enter(self):
character = entities.Player()
print character.hp
return 'shop'
これを残りのコードでテストすると、次のようになります。
-------------------------------------------------------------------------------
10
-------------------------------------------------------------------------------
0
-------------------------------------------------------------------------------
それで、私はここで何が欠けていますか?を使用してその属性を設定できると思っ=
たのですが、間違っているようですか? 私が初めてそれをやったときはうまくいきましたが、どうすればPythonに新しい値hp
を10に設定させることができますか?