python/pygame でプログラミングしているゲームでスコアを設定しようとしています。
私のスコアは、次のような場合に機能します。
global score
score = 0
擬似:
if player_rect.coliderect(baddie_rect):
score +=1
次に、スコアを画面に表示します。
しかし、このスコアを別のクラスの関数で使用したいと考えています。その関数がメイン クラスで呼び出される場所。
それで
衝突関数では、プレーヤー クラスにあるスコアをインクリメントしたいと思います。メインクラスでスコアを印刷したいと思います。短縮コードを使用して、次のようなものがあります。
class player:
.
.
.
global score
score = 0
def __init(self):
self.score=0
def get_score(self):
return self.score
def set_score(self, score):
self.score = score
def collision():
.
.
if player_rect.coliderect(baddie_rect):
self.score +=1
衝突が発生したときにスコアを取得しようとすると:
class main():
player = player()
player.colision()
print player.get_score()
何も起こりません。スコアは増加しません。
助言がありますか?