目标:用sprite 类来实现动态画面,例如爆炸效果,BOSS机的炫酷展示
用了python游戏编程入门里的例题,改变了一下。
load 函数加载一张图片,对指定高宽,列的图片切割存
update 函数每次更新都计算,大于刷新间隔,就显示下一张图片,刷完图片又从第一张开始
set_pos 函数可以设置图片在屏幕中显示的位置
import pygame
from pygame.locals import *
class Blast(pygame.sprite.Sprite):
def __init__(self, scene):
pygame.sprite.Sprite.__init__(self)
self.main_scene = scene
self.image = None
self.master_image = None
self.rect = None
self.topleft = 0,0
self.frame = 0
self.old_frame = -1
self.frame_width = 1
self.frame_height = 1
self.first_frame = 0
self.last_frame = 0
self.columns = 1
self.last_time = pygame.time.get_ticks()
self.rate = 60
def load(self, filename, width, height, columns):
self.master_image = pygame.i