- 创建窗口操作
pygame init() #pygame 的初始化操作
pygame.mixer.init() #声音初始化
screen = pygame.display.set_mode((600,480)) #设置窗口的(宽度,高度)
pygame.display.set_caption("name") #设置窗口标题
#设置循环的目的是为了不让程序运行的时候窗口一闪而过
running = True
while running:
lock.tick(30) #FPS指每秒刷新率
for event in pygame.event.get(): #设置控制窗口关闭的事件
if event.type == pygame.QUIT:
running = False
- 设置背景,文字等颜色
font = pygame.font.SysFont("微软雅黑", 36, True, False) #(字体选择,字号,是否加粗,是否斜体)
text = font.render("action game", 1, (250,250,250)) #("呈现出来的文字内容",平滑度,颜色)将font的设置用到需要打印的字体上
screen.fill((250,0,0)) #背景色的渲染
all_sprites.draw(screen) #角色放入屏幕,后面有介绍角色的代码
screen.blit(text,(0,0)) #文字的坐标
pygame.display.updata() #屏幕的缓冲
-
颜色的讲解
颜色由红绿蓝组成,即RGB
RED:(250,0,0)
GREEN:(0,250,0)
BLUE:(0,0,250)
WHITE:(250,250,250)
BLACK:(0,0,0)
介于三者之间的坐标颜色可以自己试 -
设置角色
#用到类的方法
class Player(pygame.sprite.Sprite):
def __init__(self): #定义角色的形态(静态制作)
pygame.sprite.Sprite.__init__(self)
self.image = pygame.Surface((20,20)) #自定义角色的样子,可以用准备好的图片,这里我假设是一个正方形
self.image.fill((0,250,0)) #自定义角色的颜色,如果有图片,可以不用写此代码
self.rect = self.image.get_recr() #将我们自定义的角色大小传入
self.rect.ceter = (300,200) #自定义角色的初始位置,这里我设在窗口的正中心
self.rect.y_s = 5
def update(self): #定义角色的状态(动画制作)
self.rect.x = self.rect.x+5 #相当于水平一直运动
self.rect.y = self.rect.y+self.rect.y_s #数值运动
if self.rect.y < 100: #设置一个条件来控制角色的上下移动不会跳出屏幕
self.rect.y_s = -self.rect.y_s
if self.rect.y > 350:
self.rect.y_s = -self.rect.y_s
all_sprites = pygame.sprite.Group() #游戏制作的角色远不止一个,这里定义一个角色组,方便调用
player = Player()
all_sprite.add(player) #将我们定义的正方形角色添加到角色组中