社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

利用Python自制雷霆战机小游戏,娱乐编程,快乐学习!

python • 6 年前 • 654 次点击  

利用Python自制雷霆战机小游戏,娱乐编程,快乐学习!

导语

进群:496248129获取本文源码,想玩的小伙伴可以自己去尝试下哦!记得进群:496248129哦!还有python学习资料哦!

开发工具

Python版本:3.6.4

相关模块:

pygame模块;

以及一些Python自带的模块。

环境搭建

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

先睹为快

在cmd窗口运行"Game10.py"文件即可。

效果如下:




原理简介

游戏规则简介:

游戏模式包括单人模式和双人模式。

单人模式中,玩家通过↑↓←→控制飞船行动,J键发射炮弹;双人模式中,玩家一通过↑↓←→控制飞船行动,J键发射炮弹,玩家二通过wsad控制飞船行动,空格键发射炮弹。每击碎一个小行星(或者说陨石),玩家得分加一,若所有玩家均被小行星击中,则游戏结束。

逐步实现:

Step1:定义精灵类

首先,我们定义一下游戏中涉及到碰撞检测的三个精灵类,也就是小行星(陨石)类:


子弹类:


飞船类:


子弹发射后,只需要一直向前飞就行了,小行星和子弹类似,产生后,只需要一直向前飞,然后顺便旋转一下就行了,飞船类则需要拥有发射子弹的能力以及被小行星击中后爆炸的"能力"。

Step2:实现游戏主循环

先初始化:


然后就可以进入游戏主循环了,主循环包括按键检测并根据检测结果行动飞船:


向下移动背景图实现飞船向上移动的效果:


画子弹、飞船和小行星,并进行必要的碰撞检测等操作:


Step3:制作简易的游戏开始和结束界面

游戏开始界面:


游戏结束界面:


Step4:整合游戏开始、游戏进行和游戏结束界面


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/30962
 
654 次点击