2016-01-20 101 views
0

我在Pygame上做游戏,背景是滚动。但它不断消失!它滚动两次,然后消失。我该如何解决??下面是代码:Pygame滚动背景消失?

#Scrolling background 

    background = "foxhabitat.jpg" 
    back = pygame.image.load(background).convert() 
    back2 = pygame.image.load(background).convert() 

    screenWidth = 900 
    back=pygame.transform.scale(back, (1000,600)) 
    back2=pygame.transform.scale(back, (1000,600)) 

    screenscroll.blit(back, (xx,0)) 
    screenscroll.blit(back2,(xx+screenWidth,0)) 
    print xx 
    xx = xx - 12 
    if xx >= screenWidth: 
     xx = 0 

    msElapsed = clock.tick(100) # changes speed of scrolling 
+0

btw:你不需要'back2'你可以双击'back'。 – furas

回答

1

我觉得

if xx >= screenWidth: 
    xx = 0 

应在0

if xx + screenWidth <= 0: 
    xx = 0 

xx开始,那么你每次。减去时间12从它。结果是xx始终是<= 0,所以xx >= screenWidth将始终为假。

xx + screenWidth图像的位置,并且当该值小于零,则时间复位xx位置让滚动再次开始。

+0

非常感谢!这帮了很多:) – Brianna

0

如果你减去那么你不能screenWidth比较但0(零)

xx = xx - 12 
if xx <= 0: 
    xx = screenWidth 

,或者你可以做

xx = xx - 12 
if xx <= 0: 
    xx = xx + screenWidth 
+0

我已经尝试了这两种方法,但仍然无法正常工作,滚动背景仍然消失。我还能做些什么来解决这个问题? – Brianna

+0

如果没有完整的代码,我不禁感慨。 – furas