1 题目描述

这战车大战就是指红白机的战车大战,操纵战车,将敌人通通轰掉,完成这个关卡。

小时后完红白机时,不能输人金手指,没办法自由控制游戏,现在刚好有这个OOP专题机会,我们就仿制一个战车大战,自己可以完全控制程序码,做到比输人金手指更完整的控制。

程序使用 DEV-C 编译器进行开发。

2 系统架构和分析

一刚开始,我们思考这游戏的雏型该怎么定义,我们认为,需要有:战车、子弹、地图(map)、实体(body)。

有实体(body)的原因是因为,画在winBGI的图形就像影子一样,那只是显示给我们看的,计算机根本不知道子弹有没有打到砖块,有没有打到战车,所以就将 winBGI窗口416x416个像素,都用数组body[416][416],每个像素目前是谁占据着,都会纪录在这数组里,之后计算机要判断这块区域中有没有障碍,子弹有没有打到砖块,哪台战车被打到,都可以直接从数组判断。

虽然已经有body[416][416]这个数组了,另外还有map[26][26]这数组,因为每种地形(砖块、海…)都是16x16的方块,所以416x416像素,可以分成 26x26 个数组,map[26][26]这数组主要有两个作用:一个是画图时,就读这个数组,把相对应的地形都印在winBGI,另一个是可以直接利用档案IO,从外部编辑地图 (.txt),所以不用再手动排地图。

源码下载地址:https://www.write-bug.com/article/1731.html

基于C++实现的经典坦克大战游戏相关推荐

  1. 基于原生JavaScript的经典坦克大战游戏开发设计

    主要含有以下功能: 1.玩家采用等级机制,共5级: 2.补充装备有子弹.金星.炸弹.导弹.手枪.战舰,分值各不相同: 3.打掉障碍可加分: 4.用鼠标控制子弹射击,左键为单发射击.右键为双发射击,屏蔽 ...

  2. 【java毕业设计】基于java+Socket+Eclipse的坦克大战游戏设计与实现(毕业论文+程序源码)——坦克大战游戏

    基于java+Socket+Eclipse的坦克大战游戏设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于java+Socket+Eclipse的坦克大战游戏设计与实现,文章末尾附有本毕业设 ...

  3. 基于QT的C++的坦克大战游戏

    近期培训期间做的基于C++的坦克小游戏,欢迎评论. 首先是主驱动部分:tankclient.h,和tankclient.cpp tankclient.h部分 #ifndef TANKCLIENT_H ...

  4. 用pygame做经典坦克大战游戏(附源码)

    首先,我们得分析这个项目的结构,设计出它的框架 坦克大战游戏项目开发 需求分析 1.分析项目需要多少个类 2.分析每个类有哪些方法 1.坦克类(敌方坦克,我方坦克) 移动.射击.展示 2.子弹类 移动 ...

  5. 基于JavaSwing坦克大战游戏的设计和实现

     还记得传说中的经典90坦克大战吗?那些怀旧的记忆,伴随着我们一起走过来的经典坦克大战,刚开始那战战兢兢,屡屡被敌人坦克击毁的情景历历在目.现在好了,再也不用担心敌人坦克了,可以横冲直撞,横扫敌人坦克 ...

  6. 基于Java的坦克大战游戏的设计与实现(论文+PPT+源码)

    幻灯片1 基于Java的坦克大战游戏的设计与实现 幻灯片2 CONTENTS 1 4 设计工具与相关技术 详细设计 2 5 系统分析 结论 3 总体设计 幻灯片3 PPT模板下载:http://www ...

  7. Java练手项目2:基于Java的坦克大战游戏(学习Java必备!!!)

    1.引言 随着社会和时代的进步,来自各个方面的压力让人没精打采,为了分解人们的压力,休养那变得疲顿的头脑和劳累的身心,特设计了坦克大战小游戏,游戏操作非常容易,只要将手指放在键盘上敲击相关的游戏键就可 ...

  8. 基于HTML5坦克大战游戏简化版

    之前我们有分享过不少经典的HTML5游戏,有些还是很有意思的,比如HTML5版切水果游戏和HTML5中国象棋游戏.今天要分享的是一款简化版的HTML5坦克大战游戏,方向键控制坦克的行进方向,空格键发射 ...

  9. 【Pygame实战】经典的坦克大战游戏,勾起童年无限回忆《坦克大战小霸王版》

    导语 哈喽!哈喽--我是木木子 今天来升级下之前写的坦克大战游戏嘛,哈哈哈 其实也不算是修改,就是稍微的调试一下!​​ 因为之前写的界面都是英文的 ,有的小伙伴儿英文一点儿都不会的可能看着别扭,今天来 ...

最新文章

  1. python if语句多个条件-python if条件判断语句
  2. 推荐 | 《社交红利2:0》:即时引爆的四个关键定律
  3. (十六)深入浅出TCPIP之Hello CDN
  4. 客户端自动化测试研究
  5. 使用asp.net改变图片颜色
  6. 力扣1047. 删除字符串中的所有相邻重复项(JavaScript)
  7. 关于wordpress站点地图代码调试
  8. 离散数学第一章(知识点总结)
  9. 《给予者》:害羞,内向,不善言辞,如何构建人脉?
  10. matlab对语音信号预加重处理,语音信号的预加重处理和加窗处理 | 学步园
  11. 射频电路PCB的设计技巧
  12. 51单片机两只老虎c语言程序,源码共享:51单片机上实现7首简单音乐的汇编代码...
  13. iPhone5主摄像头图像传感器来自SONY
  14. 毕业论文页码及目录设置方法
  15. 电动自行车UL认证安全标准UL2849
  16. win10系统启动wifi服务器,windows10系统下开启wifi共享的两种方法
  17. 豆瓣的开发语言:无所不能的python
  18. 解决Ardupilot+gazebo+mavros在仿真状态下无人机能解锁,但是不能起飞的问题
  19. 在Android项目上集成Google语音(不使用手机自带引擎)
  20. 三生三世十里桃花用计算机怎么弄,三生三世十里桃花ios如何用电脑玩 三生三世十里桃花ios电脑教程...

热门文章

  1. 嵌入式开发学习之--用蜂鸣器来传递摩斯码
  2. 什么蓝牙耳机适合打游戏?打游戏不延迟的蓝牙耳机
  3. 有一种文化,叫文化衫
  4. 如何查去别人的ip,进行定位
  5. 图片渲染延迟_深度算法优化 金山云低延迟直播码率再节省12%~17%
  6. 2022年四月新闻舆情事件分析集锦
  7. springdatajpa的表名大小写问题
  8. 龙芯3a5000下安装部署rabbitmq
  9. java启动参数 -xmn_Java 进阶 (三) JVM参数说明
  10. limit用法,左右内连接的写法和区别