c语言编写坦克大战源代码

#include "tank.h"

#include "ConOperator.h"

#include

#include

#include

#include

using namespace std;

TankGame::TankGame(int w, int h)

{

// 设定当前关数

no = 1;

// 设定游戏整体高宽

wide = w;

high = h;

HANDLE hStdOut = GetStdHandle(STD_OUTPUT_HANDLE);

COORD sizePos = {2 * wide, high};

SetConsoleScreenBufferSize(hStdOut, sizePos);

// 分配游戏空间状态表

gameSpace = new GameSpace*[high];

for (int i = 0; i != high; i++)

gameSpace[i] = new GameSpace[wide];

// 添加围墙

wall = new Wall(gameSpace, wide, high);

wall->draw();

}

void TankGame::load_init()

{

// 初始化游戏空间

for (int y = 1; y != high-1; y++) {

for (int x = 1; x != wide-1; x++) {

gameSpace[y][x].have = false;

gameSpace[y][x].kind = 0;

gameSpace[y][x].no = 0;

}

}

// 添加地图

map.load(gameSpace, no);

// 初始化自己坦克

me.init_xy();

me.trans_direction(1);

me.set_no(0);

me.init_move(gameSpace, wide / 2 - 2, high - 5);

// 按顺序诞生敌人坦克

creatPlace = 0;

for (int i = 0; i != 3; i++) {

freezeTime[i] = REBIRTHTIME;

enemy[i].init_xy();

enemy[i].set_kind(2);

enemy[i].set_no(i+1);

reset(enemy[i]);

}

// 数目初始化

leftCount = 17;

existCount = 3;

// 显示图片

me.draw_tank();

for (int i = 0; i != 3; i++)

enemy[i].draw_tank();

map.draw();

}

TankGame::~TankGame()

{

if (wall)

delete wall;

if (gameSpace) {

for (int i = 0; i != high; i++)

delete[] gameSpace[i];

delete[] gameSpace;

}

}

void TankGame::reset(Tank& tank)

{

bool success = false;

int t = 3;

while (t && !success) {

creatPlace++;

if (creatPlace == 4)

creatPlace = 1;

// 诞生地点选择

switch (creatPlace) {

case 1:

tank.trans_direction(3); //朝下

if (tank.reset(gameSpace,1,1))

success = true;

break;

case 2:

tank.trans_direction(3);

if (tank.reset(gameSpace,wide / 2 - 2, 1))

success = true;

break;

case 3:

tank.trans_direction(3);

if (tank.reset(gameSpace,wide - 4, 1))

success = true;

break;

}

if (!success)

t--;

}

}

void TankGame::start()

{

char comman

c语言坦克大战源代码vc 6.0,c语言编写坦克大战源代码.doc相关推荐

  1. c语言大作业俄罗斯方块,VC++ 6.0 C语言实现俄罗斯方块详细教程

    今天把我之前写的大作业分享一下吧,并教你们如何实现,希望你们看了前面的教程也能自己写一个. 1.要先下载一个 graphics.h 的头文件来绘图. 2.初始化窗口:initgraph(x, y);这 ...

  2. 有关VC++6.0 C语言编译得到的.exe文件图标修改

    在写了很多的C语言代码后,每次的得到的图标都是这个:.当然也就厌倦了,如何去修改呢? 第一步:自己做或者网上下载自己需要的ico图标. 第二步:VC++6.0的工程--->增加到工程---> ...

  3. c语言 连通域算法 递归,VC++ 6.0编写计算机图形学中的种子填充算法,想用递归的八向连通域,求助!...

    VC++ 6.0编写计算机图形学中的种子填充算法,想用递归的八向连通域,求助!0 填充函数代码如下: void CComputerGraphicsView::PolygonFill2()//区域填充函 ...

  4. c语言double变量后面几个0,C语言double型变量的初始化到底是是0还是0.0?

    0和0.0没有区别. C语言编程时常量写为0时,系统默认其是一个整型常量int,写0.0时系统默认其是双精度浮点型常量double. 在定义局部变量时不赋值的话,则对静态变量来说,编译时自动赋初值0或 ...

  5. c语言double保留2位小数0,c语言 double类型保留小数问题

    c语言 double类型保留小数问题0 落寞的夕阳A2015.12.29浏览164次分享举报 用户输入希望保留小数的位数,1到16,怎么实现 int main(){ double a = 1.1234 ...

  6. vc 编译c语言时出错,在vc++里输入c语言空函数,为什么编译没错,连接出错?

    在vc++里输入c语言空函数,为什么编译没错,连接出错? 來源:互聯網  2010-02-14 09:24:33  評論 分類: 電腦/網絡 >> 程序設計 >> 其他編程語言 ...

  7. c语言坦克大战源代码vc 6.0,坦克大战(VC6.0) - 源码下载|源代码 - 源码中国

    压缩包 : 坦克大战.rar 列表 坦克大战\BattleCity.aps 坦克大战\BattleCity.dsp 坦克大战\BattleCity.dsw 坦克大战\BattleCity.ncb 坦克 ...

  8. VC++ 6.0 C语言实现俄罗斯方块教程

    今天把我之前写的大作业分享一下吧,并教你们如何实现,希望你们看了前面的教程也能自己写一个. 1.要先下载一个 graphics.h 的头文件来绘图. 2.初始化窗口:initgraph(x, y);这 ...

  9. c语言定义数组变量初始化为0,c语言数组初始化——int a[N] = {0};

    初学数组,以华科的<c 语言与程序设计>为教材,参考了<一站式学习c编程>,后者数组一章有串代码如下 int main(void) { int i, histogram[10] ...

  10. c语言 char c1,c2; for (c1='0',C语言-5循环结构(PPT)复习课程.ppt

    C语言-5循环结构(PPT)复习课程.ppt 第五章 循环结构程序设计;课程引入;第五章 循环结构程序设计;5.1 while 语句;例1:求;1. do-while循环语句的形式 do 循环体 wh ...

最新文章

  1. QT_QSlider的总结
  2. Windows Phone应用程序政策性约束
  3. tensorflow 迁移学习_基于 TensorFlow.js 1.5 的迁移学习图像分类器
  4. vue项目中app.vue 、main.js和 index.html的关联
  5. linux命令全集,Linux命令全集
  6. protocol buffers使用说明
  7. php实现数字滚动效果,vue如何实现数字滚动增加效果?代码示例
  8. [iOS] 使用 blockable NSTimer 避免内存泄漏
  9. 神器--通过Workspaces来编辑本地文件
  10. Hadoop 开源调度系统zeus
  11. 清除Windows远程桌面连接记录
  12. 四位共阳极数码管显示函数_实验四 共阴数码管静态显示
  13. java 方法重载 应用举例,Java中的方法重载应用
  14. ap漫游测试软件,AC+AP方案选择,TP无缝漫游强过UBNT?胖AP如何实现802.11r?
  15. 【国家集训队】跳跳棋(LCA+二分答案)
  16. 更强大、更灵活、更全面丨一文搞懂DolphinDB窗口计算
  17. 苹果ios7越狱后Safari浏览器与天气闪退情况解决方法详解
  18. 软件使用说明书V1.0发布
  19. background-image图片不存在时显示默认照片
  20. 贝塞尔曲线 弯曲动画ios_用贝塞尔曲线弯曲

热门文章

  1. 模拟CMOS 集成电路设计
  2. 用Python执行SQL、Excel常见任务?10个方法全搞定!
  3. 数据挖掘实战—财政收入影响因素分析及预测
  4. coreseek实战(一):windows下coreseek的安装与测试
  5. 动软代码生成器连接oracle数据库
  6. DirectX Repair V3.0
  7. 美国地名大全(美国城市名称英文、中文)
  8. 哈工大自然语言处理实验1——汉语分词系统
  9. 玄学编程入坑指南之侠客行:黑匣子·谜
  10. 【IIOT】欧姆龙PLC数采之NX/NJ系列