2017-04-22 4 views
-3

私はPythonでゲームを作っています。私の飛行オブジェクトを撃ったときに爆発しますが、その後は爆発しなくなります。私はこれを修正する方法を知っておく必要があります。オブジェクトが私に撃墜されて破壊されるようにします。私のコードは次のとおりです。どのようにオブジェクトを降り続けるようにするには? Python game

SPEED = 3 
#set initial location of image 
image_x = random.randrange(0, 480) 
image_y = -50 

image_y = image_y + SPEED 
if image_y > 640: 
    image_x = random.randrange(0, 480) 
    image_y = -25 

def __init__(self, x = 40, y = 40, speed = 2, odds_change = 200): 
    """ Initialize the Fly object. """ 

    super(Fly, self).__init__(image = Fly.image, 
          y = y, x = random.randrange(0, 480), 
          dy = speed, 
         dx = speed) 
    self.bottom = 0 

    self.odds_change = odds_change 
    self.time_til_drop = 500 

def update(self): 
    """ Determine if direction needs to be reversed.""" 
    if self.left < 0 or self.right > games.screen.width: 
     self.dx = -self.dx 
    elif random.randrange(self.odds_change) == 0: 
     self.dx = -self.dx 

    self.check_drop() 

def check_drop(self): 
    """ Decrease countdown or drop fly and reset countdown. """ 
    if self.time_til_drop > 0: 
     self.time_til_drop -= 1 
    else: 
     self.time_til_drop = 500 
     new_fly = Fly(x = self.x) 
     games.screen.add(new_fly) 

     #set buffer to approx 30% of fly height regardless of fly speed 
     self.time_til_drop = int(new_fly.height * 1000/Fly.SPEED) + 1000 

def die(self): 
    """Destroy Fly.""" 
    #If fly is destroyed, then continue playing 
    self.destroy() 

答えて

0

あなたは実際にクラスを使用していません。あなたは関数を書いています。

関連する問題