《飞行棋游戏程序C语言代码》由会员分享,可在线阅读,更多相关《飞行棋游戏程序C语言代码(18页珍藏版)》请在金锄头文库上搜索。
1、文档供参考,可复制、编制,期待您的好评与关注! #include stdio.h#include windows.h#include conio.h#include stdlib.h#include time.hvoid restart(int map100) int m100=100,0,0,0,0,2,1,0,0,3,0,0,0,2,0,0,0,2,0,0,4,0,0,1,0,4,0,3,0,0,0,0,0,2,0,0,0,0,2,0,1,0,0,0,0,4,0,0,0,0,2,0,0,0,0,1,0,0,0,0,3,0,0,4,2,0,0,0,0,1,0,0,4,0,0,0,0,0,0,
2、0,2,0,0,1,0,0,0,0,4,0,4,0,0,3,2,0,0,0,0,0 ;/*这里是地图代码*/int i;FILE * fp = fopen(map.txt,r);if(fp != 0)printf(找到地图。尝试加载地图);for(i=0;i100;i+)fscanf(fp,%d,&mapi);if(mapi != 0 & mapi != 1 & mapi != 2 & mapi != 3 & mapi != 4 & mapi != 10 & mapi != 20 & mapi != 100) mapi=mi;fclose(fp); elseprintf(未找到地图。加载默认地
3、图中);for(i=0;i100;i+)mapi=mi;printf(地图加载完成);Sleep(500);/*用来给map数组赋值*/ /*用来输出游戏规则*/*用来输出地图*/void printmap(int map)int i=0,j=1;printf(是平地,是幸运罗盘,是地雷,是暂停,是时空隧道n);printf(n);for(i=0;i31;i+)switch(mapi)case 0:printf();break;case 1:printf();break;case 2:printf();break;case 3:printf();break;case 4:printf();br
4、eak;case 10:printf();break;case 20:printf();break;case 100:printf();break;printf(n);for(;i35;i+) switch(mapi)case 0:printf( n);break;case 1:printf( n);break;case 2:printf( n);break;case 3:printf(n);break;case 4:printf(n);break;case 10:printf(n);break;case 20:printf(n);break; for(;i66;i+) switch(map6
5、6-(j+)case 0:printf();break;case 1:printf();break;case 2:printf();break;case 3:printf();break;case 4:printf();break;case 10:printf();break;case 20:printf();break; printf(n); for(;i69;i+)switch(mapi)case 0:printf(n);break;case 1:printf(n);break;case 2:printf(n);break;case 3:printf(n);break;case 4:pri
6、ntf(n);break;case 10:printf(n);break;case 20:printf(n);break;for(;i100;i+) switch(mapi)case 0:printf();break;case 1:printf();break;case 2:printf();break;case 3:printf();break;case 4:printf();break;case 10:printf();break;case 20:printf();break;case 100:printf();break; printf(n); printf(n);/*用来输出地图*/*
7、 拟定双人游戏规则及产生走路动画*/int _flash(int map,int ss,int *pl,int *pl2,int whatplayer)int i, t;time_t now,d;char c;printf(%d!,ss);Sleep(100);if(whatplayer=1)for(i=0;i100;i+)if(mapi=10)mapi=0;break;for(i=1;i=99 | *pl2+ss=99)if(*pl+ss=99)*pl=99;return 0;else if(*pl2+ss=99)*pl2=99;return 0;t=map*pl+i; map*pl+i=1
8、0; Sleep(100);system(cls);printmap(map);Sleep(100);map*pl+i= t;Sleep(50);system(cls);*pl=*pl+ss;if(map*pl=1)printf(恭喜来到幸运罗盘!n);printf(请做出选择:n);printf(按1.和对方骑兵交换位置 按2.轰炸对方骑兵(炸退六步) 按其他键: 还是算了n);c=getch();switch(c)case 1:printf(嗖嗖嗖.n);Sleep(500);printf(: ? 怎么回事? n);Sleep(300); t=*pl;*pl=*pl2;*pl2= t;sy
9、stem(cls);Sleep(50);break;case 2:printf(: 炸弹归来. n); Sleep(500);printf(: 哎呦喂! n); Sleep(300);map*pl2=0;*pl2=*pl2-6; if(map*pl=map*pl2)Sleep(300);printf(: :-D 哈哈哈哈.踩到了! n);Sleep(800);map0=20;map*pl=0;*pl=0;system(cls);if(*pl20)*pl2=0; system(cls);Sleep(50);break;else if(map*pl=2)Sleep(300);printf(: :-
10、( 踩到地雷,气死了. n);Sleep(50);Sleep(300);map*pl=0;*pl=*pl-6;if(map*pl=map*pl2)Sleep(300);printf(: :-D 哈哈哈哈.踩到了! n);Sleep(800);map0=20;map*pl2=0;*pl2=0;system(cls);if(*pl_=99 | *pl2=99)if(*pl=99)*pl=99;return 0;else if(*pl2=99)*pl2=99;return 0;system(cls);printmap(map);printf(请玩家2按任意键投掷骰子:n);d=getch(); if
11、(*pl=99 | *pl2=99)if(*pl=99)*pl=99;return 0;else if(*pl2=99)*pl2=99;return 0;printf(丁零当啷.);Sleep(1000);now=time(NULL);d+=now;while(d3)d=d/(rand()%5+1);_flash(map,d+1+rand()%2,pl,pl2,2);system(cls); else if(map*pl=4)Sleep(300);printf(: |-p 进入时空隧道,真爽! n);Sleep(50);Sleep(1000);map*pl=0;*pl=*pl+10; if(*pl99)*pl=99;system(cls);else if(map*pl=map*pl2)Sleep(300);printf(: :-D 哈哈哈哈.踩到了! n);Sleep(800);map0=20;map*pl2=0;*pl2=0;system(cls);map*pl=10;map*pl2=20;printmap(map);elsefor(i=0;i100;i+)if(mapi=20)mapi=0;break;for(i=1;