童年掌机游戏-打砖块(基于pygame的实现)

项目背景:
小时候有过一个掌机游戏机,里面有俄罗斯方块,打方块等游戏,玩的那叫一个废寝忘食,只是后来玩坏了就没再玩过。今日想学习以下python,就从游戏入手,写一个打方块的游戏,顺便回忆以下童年的乐趣。
此作完全是我学习python和游戏制作的练手作品,用到的python语法和pygame插件的api不会写的很详细,主要记录学习遇到的问题和思路。
童年掌机游戏-打砖块(基于pygame的实现)_第1张图片

  1. 环境准备
    1.1.安装python,这里我安装的是3.6.3。(安装教程请自行搜索)
    1.2.安装pygame,这里我安装的是1.9.3。(安装教程请自行搜索)
    1.3.安装pycharm
    1.4.准备素材,打开画图工具,做出一个砖块图片,一个小球图片,一个板子图片。
  2. 思路整理
    回忆游戏流程,整个游戏大致有以下几个步骤
    2.1.游戏初始化,载入三种图片。
    2.2.点击启动按钮,小球移动,也可以增加暂停功能。
    2.3.小球与砖块、板子,左右和上方墙壁的碰撞
    2.4.板子与左右墙壁的碰撞(不可超越墙壁)
    2.5.小球的落地,游戏结束
    2.6.砖块被打完,游戏结束
    2.7.计分功能
    2.8.音乐~~
  3. 开整
    先从载入图片做起。废话不多说,直接上代码
import pygame
from pygame.locals import *
from sys import exit

# pygame初始化,必须要的
pygame.init()

# 创建窗口
# pygame.display是访问了显示设备
# set_mode方法会返回一个Surface对象,即本程序运行时出现的窗口画面
screen = pygame.display.set_mode((360, 480))
# 设置窗口的名字
pygame.display.set_caption('打砖块')

# 加载图像
# 球
ball = pygame.image.load('img/ball.png')
# 砖块
block = pygame.image.load('img/block.png')
# 板子
board = pygame.image.load('img/board.png')

# 游戏程序一般都需要一个死循环,通过某些条件才可以退出
while True:
    for event in pygame.event.get():
        # 接受退出时间后退出程序
        if event.type == QUIT:
            exit()
    # 把画面背景设置为白色
    screen.fill((255, 255, 255))
    #把上面加载的图片放入到画面中
    # 把球放进去,并设置坐标
    screen.blit(ball, (180, 430))
    # 把砖块放进去,并设置坐标
    # 这里仅放了一个砖块,以后可以做个循环放好多砖块
    screen.blit(block, (20, 20))
    # 把板子放进去,并设置坐标
    screen.blit(board, (150, 450))
    # 刷新画面
    pygame.display.update()

通过上面的代码就可以简单的把图片加载到画面中了
童年掌机游戏-打砖块(基于pygame的实现)_第2张图片
接下来还要让小球和板子动起来,下次再写。

你可能感兴趣的:(python)