0

我正在写一个基本的鼠标躲闪游戏,我需要用小星星来躲闪。我做到了,一旦一颗星星离开屏幕,它就会在顶部再次闪烁>有效,但它会在相同的 x 位置闪烁

这是移动星星的更新代码:

def update(self):
    self.mouse_pos = pygame.mouse.get_pos()
    (self.player_r.x, self.player_r.y) = self.mouse_pos

    self.star_r.x = ran_x
    self.star_r.y += 2
    if self.star_r.y > 640:
        self.star_r.y = 0

这是星星被击中的地方:

def blitPlayer(self, screen):
    screen.blit(background,(0,0))
    screen.blit(self.player,(self.mouse_pos))
    screen.blit(self.star,(ran_x, self.star_r.y))

ran_x在顶部的类之外定义如下:

ran_x = random.randint(10,470)

我认为正在发生的是,当我运行它时,ran_x 由一个随机数定义,然后保留该数字,但我希望它在每次星星离开屏幕时改变

提前致谢!!

-ChristianCareaga

4

1 回答 1

1

那为什么不在这里重新计算ran_x:

if self.star_r.y > 640:
    self.star_r.y = 0
    ran_x = new random number
于 2013-06-04T04:18:33.590 回答