# 在使用此教程之前,注意自己的背景图片大小,设置自己适应的大小 # 此教程用精灵也可以完成,用面向对象的方式更容易理解
import pygame
clock = pygame.time.Clock()
pygame.init()
screen = pygame.display.set_mode((480,700))
class Background():
def __init__(self, is_alt = 0):
# 加载素材
self.back = pygame.image.load('image/backgrond.png')
# 获取矩形
self.back_rect = self.back.get_rect()
# 设置他的位置有默认值是0
# 第二个进来的位置就是他的最上面,给-700就好了
self.back_rect.y = is_alt
def update(self):
# 1,让背景往下滚
self.back_rect.y += 1
# 2,判断是否移出了屏幕,如果移出。将图像设置到屏幕的上方
if self.back_rect.centery >= 1000:
self.back_rect.y = -700
def draw(self):
# 绘制屏幕
screen.blit(self.back,self.back_rect)
back = Background()
# 创建第二个图片背景时指定在最上面去
back1 = Background(-700)
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
exit()
screen.fill((255,255,255))
# 两个对象都需要滚动滑动,
back.update()
back.draw()
back1.update()
back1.draw()
# python的更新方法
pygame.display.update()
clock.tick(60)