python pygame Sprite精灵动起来
python pygame Sprite动起来
主要接受精灵类,游戏精灵群组,游戏更新函数
import pygame FPS = 60 # 每秒更新游戏画面的频率 WIDTH = 500 # 窗口宽度 HEIGHT = 600 # 窗口高度 GREEN = (54, 173, 35) # 游戏初始化 pygame.init() screen = pygame.display.set_mode((WIDTH, HEIGHT)) # 游戏窗口 pygame.display.set_caption("飞机大战") # 窗口标题 clock = pygame.time.Clock() # 设定时钟,为了控制游戏更新画面频率 running = True # 精灵类游戏角色类 class Player(pygame.sprite.Sprite): def __init__(self): pygame.sprite.Sprite.__init__(self) self.image = pygame.Surface((50, 40)) # 精灵图片 self.image.fill(GREEN) self.rect = self.image.get_rect() # 定位精灵位置,坐标 self.rect.x = 200 self.rect.y = 200 # self.rect.center =(WIDTH/2,HEIGHT/2) 在画布中央 def update(self): self.rect.x += 1 # 多游戏角色 all_sprites = pygame.sprite.Group() player = Player() all_sprites.add(player) # 加入游戏群组 # 主游戏循环 while running: clock.tick(FPS) # FPS一秒更新几次画面 # 鼠标键盘实践监听,回传列表 for event in pygame.event.get(): if event.type == pygame.QUIT: running = False # 更新游戏 all_sprites.update() # 执行游戏精灵群组里每个物件的update函数 # 显示 screen.fill((255, 0, 0)) # RGB 红绿蓝(0-255) all_sprites.draw(screen) # 将游戏群组里精灵画出来 pygame.display.update() pygame.quit()