零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C++ 面向对象
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C++ 设计模式
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C++ STL
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 技术杂谈
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 常用函数
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 图像处理
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 算法/面试
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 项目实战
一.效果演示
二.开发环境
- 开发工具:visual studio 2019
- 开发语言:C/C++
- 依赖第三方库:EasyX(EasyX 安装教程)
三.运行环境
- 运行环境: windows
四.设计思路
- 1.导入所有的资源图片、背景音乐
- 2.初始化界面,显示飞机、敌机、子弹的图片
- 3.检查飞机状态
- 3.1.敌机出现并开始下落
- 3.2.判断飞机是否撞机
- 3.3.飞机发射子弹是否击中敌机
- 4键盘鼠标操作
- 4.1.检测是否有鼠标消息
- 4.2.鼠标移动位置则为飞机位置
- 4.3.按下鼠标左键发射子弹
- 5.结束游戏
- 6.存档和读档功能
五.实现的基本功能
- 1.图片、音效的显示
- 2.用鼠标控制飞机移动、按左键发射子弹
- 3.敌机的自由下落
- 4.子弹击中敌机,敌机随机生成
- 5.我机撞到敌机显示爆炸图片,游戏结束
- 6.达到一定分数后,敌机下落的速度变快
- 7.敌机超出屏幕外面进行扣分
- 8.新增了存档和读档功能
六.部分代码演示
完整源码下载:C/C++ 学习目录 >> C/C++ 项目实战 >> C语言飞机大战
/************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): https://www.codersrc.com/
//@File:C/C++ 项目实战 – C语言飞机大战
//@Time:2023/02/18 08:00
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/************************************************************************/
// 初始菜单界面
void startMenu()
{
putimage(0, 0, &img_bk); // 显示背景
putimage(450, 0, &img_bk); // 在另一个地方再次显示背景,实现背景铺满窗口的效果
putimage(900, 0, &img_bk); // 在另一个地方再次显示背景,实现背景铺满窗口的效果
setbkmode(TRANSPARENT);
settextcolor(YELLOW);
settextstyle(100,0, _T("宋体"));
outtextxy(Width*0.2, High*0.1, "飞 机 大 战");
settextcolor(WHITE);
settextstyle(50,0, _T("楷体"));
outtextxy(Width*0.35, High*0.35, "1、开始新游戏");
outtextxy(Width*0.35, High*0.45, "2、读取游戏存档");
outtextxy(Width*0.35, High*0.55, "3、退出");
settextcolor(RED);
settextstyle(30,0, _T("楷体"));
outtextxy(Width*0.3, High*0.7, "游戏规则如下:");
outtextxy(Width*0.3, High*0.75, " 鼠标移动控制飞机移动");
outtextxy(Width*0.3, High*0.8, " 鼠标左键发射子弹");
outtextxy(Width*0.3, High*0.85, " ESC键暂停游戏");
//......
}
七.完整代码下载
ChatGPT 3.5 国内中文镜像站免费使用啦
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容