用Python做一个飞机大战游戏
基于pygame的一款小游戏
这是我上半年做的一款小游戏,但是一直忘记了,现在才上传代码。 
github项目地址:StarMan
代码基于pygame,Python版本3.5.2运行正常。
游戏很简单,代码也很简单。
游戏内容大致就是在太空中驾驶一架飞机,与敌机展开战斗。
以下是开始的菜单界面:

关于界面:
帮助页面:
游戏开始时玩家拥有3次复活机会,和3个技能,按空格触发技能。技能的效果是消除屏幕内所有敌机。
随着游戏的进行,游戏的难道会有稍微增大,敌机的速度会加快,会出现更大的机型(敌机分为小、中、大三种)。我方每过30s会掉落补给,或是子弹增强,或是技能数量+1。
record.txt文件用来存放历史最高分数。 
image文件夹存放游戏的某些图片。 
font文件夹存放游戏的字体。 
sound文件夹存放游戏音效文件。 
代码和文件放在github 上了,请自提。
以下是游戏截图: 


用Python做一个飞机大战游戏的更多相关文章
- python做一个数独小游戏
		最近看了下python的一些知识,在这里记载一下. 1.首先是安装,在官网下载最新的版本3.6,安装的时候要注意在下面勾选上ADD TO PATH,安装的时候会自动写入到环境变量里面,如果没有勾选,可 ... 
- 用Python设计一个经典小游戏
		这是关于Python的第9篇文章,介绍如何用Python设计一个经典小游戏:猜大小. 在这个游戏中,将用到前面我介绍过的所有内容:变量的使用.参数传递.函数设计.条件控制和循环等,做个整体的总结和复习 ... 
- 基于Cocos2d-x-1.0.1的飞机大战游戏开发实例(下)
		在飞机大战游戏开发中遇到的问题和解决方法: 1.在添加菜单时,我要添加一个有背景的菜单,需要在菜单pMenu中添加一个图片精灵,结果编译过了但是运行出错,如下图: 查了很多资料,调试了很长时间,整个人 ... 
- 基于Cocos2d-x-1.0.1的飞机大战游戏开发实例(中)
		接<基于Cocos2d-x-1.0.1的飞机大战游戏开发实例(上)> 三.代码分析 1.界面初始化 bool PlaneWarGame::init() { bool bRet = fals ... 
- 基于Cocos2d-x-1.0.1的飞机大战游戏开发实例(上)
		最近接触过几个版本的cocos2dx,决定每个大变动的版本都尝试一下.本实例模仿微信5.0版本中的飞机大战游戏,如图: 一.工具 1.素材:飞机大战的素材(图片.声音等)来自于网络 2.引擎:coco ... 
- 如何做一个跨平台的游戏App?
		如何做一个跨平台的游戏App? iOS和安卓系统上的应用程序,根据提供的内容不同,按照开发方式和用户体验不同,可区分为app和游戏: 首先从开发方式不同来说明,app开发一般是用操作系统官方提供的开发 ... 
- 用Python做一个知乎沙雕问题总结
		用Python做一个知乎沙雕问题总结 松鼠爱吃饼干2020-04-01 13:40 前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以 ... 
- 使用python做一个IRC在线下载器
		使用python做一个IRC在线下载器 1.开发流程 2.软件流程 3.开始 3.0 准备工作 3.1寻找API接口 3.2 文件模块 3.2.1 选择文件弹窗 3.2.2 提取文件名 3.2.2.1 ... 
- 11.pygame飞机大战游戏整体代码
		主程序 # -*- coding: utf-8 -*- # @Time: 2022/5/20 22:26 # @Author: LiQi # @Describe: 主程序 import pygame ... 
随机推荐
- 【c# 学习笔记】构造函数
			构造函数 主要用于创建类的实例对象.当调用构造函数创建一个对象时,构造函数会为对象分配内存空间,并初始化类的成员.构造函数分为实例构造函数和静态构造函数两种. 1.实例构造函数 实例构造函数用于创建和 ... 
- API网关从入门到放弃
			前言 假设你正在开发一个电商网站,那么这里会涉及到很多后端的微服务,比如会员.商品.推荐服务等等. 那么这里就会遇到一个问题,APP/Browser怎么去访问这些后端的服务? 如果业务比较简单的话,可 ... 
- 如何使用CLI命令行部署VMware VCSA 6.5
			在本文中,我们讨论如何使用CLI部署VMware vCSA 6.5,vCSA 6.0提供了两种实现类型,向导和脚本化.我们将使用一个名为vcsa-deploy的实用程序进行CLI安装.同样vcsa-d ... 
- git merge仓
			git merge --no-ff branch 合并指定代码 如果有冲突 git mergetool 可视化解决冲突, qa! 全退出 如果修复失败 git checkout branch -f ... 
- 后ARM时代,嵌入式工程师的自我修养
			1 嵌入式学习的一些概念理解误区 很多嵌入式初学者认为,学嵌入式,就是学习ARM,就是学习开发板.买一块开发板,然后在上面“移植”u-boot.Linux内核,再使用busybox制作一个根文件系统, ... 
- Git使用两个用户名两个公钥链接同一个Git服务器
			同篇文章以Gitee举例, 支持国产, 首先关联一下我的另外一篇文章: 在码云上添加公钥时提示不允许重复添加(实际上当前公钥数为0) 在这篇文章中, 我后续有补充解释为什么会出现我之前没有弄明白的这个 ... 
- EF-初识
			什么是ORM 起源随着编程的发展,程序里都是面向对象啥的,但是数据库发展呢 网状数据库 ->层次数据库 ->关系数据库(当然还有nosql数据库 我们只是做热数据缓存 后面将会讲到) ... 
- Selenium绕过登录的实现
			1.使用命令行启动Chrome:Mac:/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome -remote-debugging ... 
- 消息中间件——RocketMQ(一) 环境搭建(完整版)
			每章一点正能量:每当你想要放弃的时候,就想想是为了什么才一路坚持到现在. 前言 最近在回顾复习Java基础中的一些知识点,发现了一些以前见过但是没有留意却特别有意思的知识特性,比如这次想分享的Java ... 
- GoF 的 23 种设计模式的分类和功能
			1. 根据目的来分 根据模式是用来完成什么工作来划分,这种方式可分为创建型模式.结构型模式和行为型模式 3 种. 创建型模式:用于描述“怎样创建对象”,它的主要特点是“将对象的创建与使用分离”.GoF ... 
