python编写贪吃蛇游戏,python贪吃蛇游戏代码详解外加中文
来源:Python编程与开发
贪吃蛇。大家应该都玩过吧。当我第一次接触到蛇的时候,我还能在诺基亚上砸碎核桃,玩得很开心。今天,我们用Python编写了一个贪吃蛇游戏。我们先来看看效果:
好,我先介绍一个想法。
所有游戏的主要内容都是程序的内循环,这是保证一个游戏正常运行的前提。
以下是编写贪吃蛇游戏的主要思路。
事不宜迟,直接说明如何用Python写Snake。
首先,调用库和初始设置
1.调用第三方库
Python与其他语言非常不同,因为它有许多第三方库可以调用。用Python写游戏的时候,pygame是一个非常好用的第三方库,可以通过pip直接安装。安装方法在上一篇文章中已经介绍过了,这里不再赘述。想了解更多pygame函数的朋友也可以查阅官方文档。
这是我们写Snake时需要调用的库。
2.初始设置
我们通过这几行代码初始化pygame,定义窗口的大小(边框),窗口的标题和图标。
3.定义颜色变量
因为需要用到一些颜色,Python没有自带。所以我们需要定义几种颜色。
第二,游戏结束
如前所述,所有游戏中最重要的部分是循环。GameOver函数是跳出这个循环的条件。下面是蛇吃自己的身体或者触碰边界时显示的界面(判断死亡的代码后面会显示)
3.蛇和覆盆子
接下来介绍游戏的主题,即蛇和树莓的展示和移动。
1.定义初始位置
我们把整个界面看成很多个20*20的方块,每个方块代表一个单位,蛇的长度可以用几个单位来表示。在这里,蛇的身体是以列表的形式存储的,方便以后删除。
2.键盘输入来判断蛇的运动
我们需要通过上下左右键或者键盘的WASD输入来控制蛇的移动,同时加入按Esc退出游戏的功能。
吃蛇运动有个特点:不能反方向运动。所以我们需要增加限制。
下一步是根据键盘输入转动蛇头,并将蛇头的当前位置添加到蛇身列表中。
3.确定你是否吃过覆盆子。
如果蛇头与树莓的正方形重合,则判断树莓被吃掉,清除树莓数量;不吃覆盆子,蛇身跟着蛇头,蛇身最后一段被踢出名单。
4.再生树莓
当树莓数量为0时,树莓再生,分数增加。
5.刷新显示层
蛇和树莓每移动一次,显示层就会刷新显示。有点像动画“框架”。
6.判断你是不是死了。
当蛇头超出边界或者蛇头与自身蛇身重合时,蛇会死亡,调用GameOver。
7.控制游戏速度
为了增加难度,我们把蛇的身体设置得更长更快,直到达到一个上限。
这里,蛇的游戏结束了。怎么样?简单吗?
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。