Python游戏开发,pygame模块,Python实现消消

「本文已参与好文召集令活动,点击查看:后端、大前端双赛道投稿,2万元奖池等你挑战!

往期回顾

Python实现经典吃豆豆小游戏

Python实现“小兔子和Bun”游戏

Python实现八音符小游戏

Python实现拼图小游戏

Python实现滑雪小游戏

Python实现经典90坦克大战

Python实现FlappyBird的小游戏

Python实恐龙跳一跳小游戏现

Python实现塔防小游戏

Python实现接水果和金币小游戏

Python实现简易版飞机大战小游戏

Python实现俄罗斯方块小游戏

Python实现推箱子小游戏

前言:

哈喽,好久不见。消失人口上线更新一波每月必出的python制作小游戏系列文章。本期我们将制作一个消消乐小游戏,让我们愉快地开始吧~

效果展示

image.png

开发工具

Python版本: 3.6.4

相关模块:

pygame模块;

以及一些Python自带的模块。

环境搭建

安装Python并添加到环境变量,pip安装需要的相关模块即可。

原理简介

游戏规则:

玩家通过鼠标交换相邻的拼图,若交换后水平/竖直方向存在连续三个相同的拼图,则这些拼图消失,玩家得分,同时生成新的拼图以补充消失的部分,否则,交换失败,玩家不得分。

玩家需要在规定时间内获取尽可能高的得分。

逐步实现:

Step1**:初始化**

游戏初始化,并加载必要的游戏素材:

图片

Step2**:定义游戏精灵类**

游戏中需要用到鼠标与拼图块之间的碰撞检测,从而操作拼图块移动,因此我们定义一个拼图块游戏精灵类以方便实现这些功能:

图片

Step3**:实现游戏主循环**

逻辑其实很简单,就是不断检测是否有鼠标点击事件发生,如果有,则判断鼠标点击时的位置是否在某拼图块的位置区域内,若在,则选中该拼图块,否则不选中。

当有第二块拼图块被选中时,则判断两个拼图块是否满足拼图交换的条件,若满足,则交换拼图块,并获得奖励,否则不交换并取消选这两个拼图块的选中状态。

源代码如下图所示:

图片

Step4**:游戏结束界面**

游戏倒计时结束后,进入游戏结束界面,界面显示用户当前得分。同时,若用户键入R键则重新开始游戏,键入ESC键则退出游戏。

源代码实现如下:

图片

文章到这里就结束了,感谢你的观看,Python24个小游戏系列,下篇文章分享24点小游戏

为了感谢读者们,我想把我最近收藏的一些编程干货分享给大家,回馈每一个读者,希望能帮到你们。

干货主要有:

① 2000多本Python电子书(主流和经典的书籍应该都有了)

② Python标准库资料(最全中文版)

③ 项目源码(四五十个有趣且经典的练手项目及源码)

④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)

⑤ Python学习路线图(告别不入流的学习)

⑥ 两天的Python爬虫训练营直播权限

切勿沉迷游戏,要劳逸结合

祝大家愉快学习