pygame 的精灵使用
pygame.sprite.Sprite 是 pygame 中用来实现精灵的一个类,在使用时并不需要对它实例化,只需要继承它,然后按需写出自己的类,因此非常简单、使用。
1. 精灵
精灵可以被认为是一个个小图片(帧)序列(例如人物行走),它可以在屏幕上移动,并且可以与其他图形对象交互。精灵图像可以是用 pygame 绘制形状函数绘制的形状,也可以是图像文件。
2. Sprite 类的成员
pygame.sprite.Sprite 用来实现精灵类,Sprite 的数据成员和函数方法主要如下。
self.image
其负责显示什么图形。例如 self.image = pygame.Surface([x, y]) 说明该精灵是一个 x * y 大小的矩形,self.image = pygame.image.load(filename) 说明该精灵显示 filename 这个图片文件。
self.image.fill([color]) 负责对 self.image 进行着色,例如:
self.image = pygame.Surface([x, y])
self.image.fill((255, 0, 0))# 对 x * y 大小的矩形填充红
self.rect
其负责在哪里显示。一般来说,先用 self.rect = self.image.get_rect() 来获取 image 的矩形区域,然后给 self.rect 设定显示的位置,一般用 self.rect.topleft 来确定左上角的位置,当然也可以 self.rect.topright、 self.rect.bottomleft 和 self.rect.bottom