背景交替滚动:
游戏启动后,背景图像会连续不断地向下方移动;
在视觉上产生英雄的飞机不断向上方飞行的错觉;
即:游戏的背景不断变化;游戏的主角未知保持不变;
在屏幕上,竖直叠放两张背景图像;将第一个图像一处屏幕后,将第一张图像凭借到第二个图像的上方;
当第二张图像移出屏幕后 ,第一张接到上方,以此循环。
1)创建两张背景图像;
第一张完全和屏幕重合;第二张在屏幕的正上方;
2)两张图像一起向下运动;
3)当任意背景的y>=屏幕的高度时,证明已经移动到屏幕下方;
4)将移动到屏幕下方的这张图像 设置到屏幕的正上方;
设计背景类:
初始化方法:
直接指定背景图片
is_alt判断是否时另一张图像
false:表示异地张图象,需要与屏幕重合;True:表示另一张图像,在屏幕的正上方
update方法:判断是否移出屏幕,如果是,将图像设置到屏幕的正下方,从而实现交替滚动‘
显示游戏背景:
滚动方式
简化对精灵组的创建
#主游戏类
import pygame
import plane_sprite
class PlaneGame(object):
"""飞机大战主游戏"""
def __init__(self):
print("游戏初始化")
#1.创建游戏窗口--矩形对象的size属性就是元组
self.screen = pygame.display.set_mode((plane_sprite.SCREEN_RECT.size))
#2.创建游戏时钟
self.clock = pygame.time.Clock()
#3.调用私有方法,精灵和精灵组的创建
self.__create_sprites()
def __create_sprites<