私のゲームでは、プレイヤーは小惑星を避けることができ、小惑星が画面の下部に当たると破壊され、スコアが10増加しますが、プレイヤーが特定のスコアに達した後、小惑星の速度を上げたいのですが、これを行うたびに私が使用しているコードでは、小惑星に問題が発生し、スコアが急速に増加し始めます。誰か助けてもらえますか?
Asteroid クラス、コードは update メソッドにあります。
class Asteroid(games.Sprite):
global lives
global score
global inventory
"""
A asteroid which falls through space.
"""
image = games.load_image("asteroid_med.bmp")
speed = 2
def __init__(self, x,image, y = 10):
""" Initialize a asteroid object. """
super(Asteroid, self).__init__(image = image,
x = x, y = y,
dy = Asteroid.speed)
def update(self):
""" Check if bottom edge has reached screen bottom. """
if self.bottom>games.screen.height:
self.destroy()
score.value+=10
if score.value == 100:
Asteroid.speed+= 1
必要に応じてスコア変数
score = games.Text(value = 0, size = 25, color = color.green,
top = 5, right = games.screen.width - 10)
games.screen.add(score)