2016-01-20 8 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

Кстати: вам не нужно 'back2', вы можете blit' back' два раза. – furas

ответ

1

Я думаю

if xx >= screenWidth: 
    xx = 0 

должен быть

if xx + screenWidth <= 0: 
    xx = 0 

xx начинается в 0, то вычитаем 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

Смежные вопросы