用C++编写的小游戏源代码
用C++编写的小游戏源代码
以下是贪吃蛇源代码:#includeiostream.h#includewindows.h#includetime.h#includestdlib.h#includeconio.h#define N 21void gotoxy(int x,int y)//位置函数{COORD pos;pos.X=2*x;pos.Y=y;SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pos);}void color(int a)//颜色函数{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),a);}void init(int apple[2])//初始化函数(初始化围墙、显示信息、苹果){int i,j;//初始化围墙int wall[N+2][N+2]={{0}};for(i=1;i=N;i++){for(j=1;j=N;j++)wall[i][j]=1;}color(11);for(i=0;iN+2;i++){for(j=0;jN+2;j++){if(wall[i][j])cout■;else cout□ ;}coutendl;}gotoxy(N+3,1);//显示信息color(20);cout按 W S A D 移动方向endl;gotoxy(N+3,2);color(20);cout按任意键暂停endl;gotoxy(N+3,3);color(20);cout得分:endl;apple[0]=rand()%N+1;//苹果apple[1]=rand()%N+1;gotoxy(apple[0],apple[1]);color(12);cout●endl;}int main(){int i,j;int** snake=NULL;int apple[2];int score=0;int tail[2];int len=3;char ch='p';srand((unsigned)time(NULL));init(apple);snake=(int**)realloc(snake,sizeof(int*)*len);for(i=0;ilen;i++)snake[i]=(int*)malloc(sizeof(int)*2);for(i=0;ilen;i++){snake[i][0]=N/2;snake[i][1]=N/2+i;gotoxy(snake[i][0],snake[i][1]);color(14);cout★endl;}while(1)//进入消息循环{tail[0]=snake[len-1][0];tail[1]=snake[len-1][1];gotoxy(tail[0],tail[1]);color(11);cout■endl;for(i=len-1;i0;i--){snake[i][0]=snake[i-1][0];snake[i][1]=snake[i-1][1];gotoxy(snake[i][0],snake[i][1]);color(14);cout★endl;}if(kbhit()){gotoxy(0,N+2);ch=getche();}switch(ch){case 'w':snake[0][1]--;break;case 's':snake[0][1]++;break;case 'a':snake[0][0]--;break;case 'd':snake[0][0]++;break;default: break;}gotoxy(snake[0][0],snake[0][1]);color(14);cout★endl;Sleep(abs(200-0.5*score));if(snake[0][0]==apple[0]&&snake[0][1]==apple[1])//吃掉苹果后蛇分数加1,蛇长加1{score++;len++;snake=(int**)realloc(snake,sizeof(int*)*len);snake[len-1]=(int*)malloc(sizeof(int)*2);apple[0]=rand()%N+1;apple[1]=rand()%N+1;gotoxy(apple[0],apple[1]);color(12);cout●endl;gotoxy(N+5,3);color(20);coutscoreendl;}if(snake[0][1]==0||snake[0][1]==N||snake[0][0]==0||snake[0][0]==N)//撞到围墙后失败{gotoxy(N/2,N/2);color(30);cout失败!!!endl;for(i=0;ilen;i++)free(snake[i]);Sleep(INFINITE);exit(0);}}return 0;}参考资料:从C++吧看来的
相关知识
游戏程序开发,游戏源代码,网页小游戏源码
做手机小游戏用什么编程
小游戏编程要学什么
C++游戏编程入门
c语言如何用手机开发小游戏
C++游戏开发入门:从零开始实现自己的游戏项目
如何编写简单的游戏程序
7个最优秀的手机游戏引擎
C++游戏开发入门:从游戏引擎到实现
源代码删除好玩吗 源代码删除玩法简介
推荐资讯
- 1老六爱找茬美女的烦恼怎么过- 4999
- 2博德之门3黄金雏龙法杖怎么得 4869
- 3《大侠立志传》剿灭摸金门任务 4312
- 4代号破晓官方正版角色介绍 4023
- 5赛马娘锻炼到底的伙伴支援卡事 3802
- 6闪烁之光11月兑换码大全20 3774
- 7原神原海异种刷怪路线-原神原 3547
- 8爆梗找茬王厕所特工怎么通关- 3542
- 9《我的世界》领地删除指令是什 3440
- 10原神开局星落湖怎么出去 原神 3426