2014-06-28 44 views
0

我一直在研究子彈地獄遊戲,但是當我嘗試讓子彈在隨機方向產卵並以直線行進時,我似乎無法做到這一點。我可以看到,使子彈在x軸和y軸上行進+/-某些像素僅導致它們以不自然的隨機模式行進。隨機方向子彈?

我的代碼:

class Bullet(pygame.sprite.Sprite): 
    def __init__(self): 

     pygame.sprite.Sprite.__init__(self) 

     self.image = pygame.image.load("Bullet.png") 
     self.rect = self.image.get_rect() 

    def update(self) : 

     self.rect.x += random.randrange(-10,10) 
     self.rect.y += random.randrange(-10,10) 

回答

0

__init__方法,你可以創建將在實例隨機選擇一次self.dxself.dy變量,然後保持不變每update

class Bullet(pygame.sprite.Sprite): 

    def init(self): 
     pygame.sprite.Sprite.__init__(self) 

     self.image = pygame.image.load("Bullet.png") 
     self.rect = self.image.get_rect() 

     self.dx = random.randrange(-10,10) 
     self.dy = random.randrange(-10,10) 

    def update(self): 
     self.rect.x += self.dx 
     self.rect.y += self.dy 
+0

哇,謝謝你非常,原來這個解決方案比我想象的要容易得多 – user3786223

+0

@ user3786223,很高興我能提供幫助。如果我的答案足夠了,你會介意接受嗎?謝謝 – sshashank124