# python 制作小游戏(三)
## **导语**
本期我们将制作一个拼图小游戏。
好吧也许有些幼稚。
不过无论如何,让我们愉快地开始吧~~~
## **开发工具**
**Python 版本:**3.6.4
**相关模块:**
pygame 模块;
以及一些 Python 自带的模块
## **环境搭建**
安装 Python 并添加到环境变量,pip 安装需要的相关模块即可。
**原理介绍**
**游戏简介:**
将图像分为 m×n 个矩形块,并将图像右下角的矩形块替换为空白块后,将这些矩形块随机摆放成原图像的形状。游戏目标为通过移动非空白块将随机摆放获得的图像恢复成原图像的模样,且规定移动操作仅存在于非空白块移动到空白块。
**例如下图所示:**
![](https://www.writebug.com/myres/static/uploads/2022/5/16/096eb2eabf990134afaada9541c0cbfb.writebug)
**逐步实现:**
**Step1:游戏初始界面**
既然是游戏,总得有个初始界面吧?
OK,我们先写一个游戏初始界面
![](https://www.writebug.com/myres/static/uploads/2022/5/16/99ea77c16b9f1b1e5939742701cacb20.writebug)
效果是这样子的
![](https://www.writebug.com/myres/static/uploads/2022/5/16/48d86a953f33ebf2ab2df035debdfce5.writebug)
根据玩家自身水平,可以选择不同难度的拼图游戏。
**Step2:定义移动操作**
定义移动操作的目的是为了移动拼图(好像是废话 T_T),具体实现起来十分简单:
![](https://www.writebug.com/myres/static/uploads/2022/5/16/4dfd18a45cad1e46b615af2c01e7c7cf.writebug)
**Step3:游戏主界面**
OK,有了前面的铺垫,我们可以开始实现我们的游戏主界面了。
首先,我们需要打乱拼图,**但是随机打乱很可能导致拼图无解,因此我们通过随机移动拼图来实现打乱拼图的效果**,这也是我们先定义拼图的移动操作的主要原因:
![](https://www.writebug.com/myres/static/uploads/2022/5/16/938d1f6c4cf78b8a2c937a08e21336d0.writebug)
游戏主界面初始化
![](https://www.writebug.com/myres/static/uploads/2022/5/16/333c4d50c02d1a04700b50556aad3f21.writebug)
最后实现主界面的显示刷新以及事件响应等功能:
![](https://www.writebug.com/myres/static/uploads/2022/5/16/5769c5e9039438a728d4c17e7b9bc9cd.writebug)
**Step4:游戏结束界面**
当玩家完成拼图后,需要显示游戏结束界面,和游戏初始界面类似,实现起来都比较简单:
![](https://www.writebug.com/myres/static/uploads/2022/5/16/1759a7e4935fe0087dbe9bba24653cab.writebug)
**OK,大功告成!!!**
效果如下:
![](https://www.writebug.com/myres/static/uploads/2022/5/16/305845c8f260b886ac721509b7c58e59.writebug)
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
资源包含文件:设计报告word+源码 将图像分为 m×n 个矩形块,并将图像右下角的矩形块替换为空白块后,将这些矩形块随机摆放成原图像的形状。游戏目标为通过移动非空白块将随机摆放获得的图像恢复成原图像的模样,且规定移动操作仅存在于非空白块移动到空白块。 详细介绍参考:https://biyezuopin.blog.csdn.net/article/details/124805848
资源推荐
资源详情
资源评论
收起资源包目录
基于Python制作的拼图小游戏.zip (12个子文件)
qvelcghd
设计报告.docx 2.54MB
resources
images
2.jpg 35KB
1.jpg 59KB
6.jpg 291KB
3.jpg 33KB
5.JPG 71KB
4.jpg 76KB
7.jpg 86KB
LICENSE 1KB
__init__.py 59B
README.md 3KB
puzzlepieces.py 10KB
共 12 条
- 1
shejizuopin
- 粉丝: 9595
- 资源: 1288
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
前往页