欢迎来到天天文库
浏览记录
ID:50222764
大小:87.60 KB
页数:7页
时间:2020-03-13
《贪吃蛇游戏代码(C语言编写).pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、#include"graphics.h"#include"stdio.h"#defineMAX200#defineMAXX30#defineMAXY30#defineUP18432#defineDOWN20480#defineLEFT19200#defineRIGHT19712#defineESC283#defineENTER7181#definePAGEUP18688#definePAGEDOWN20736#defineKEY_U5749#defineKEY_K9579#defineCTRL_P6512#defineTRUE1#defin
2、eFALSE0#defineGAMEINIT1#defineGAMESTART2#defineGAMEHAPPY3#defineGAMEOVER4structSPlace{intx;inty;intst;}place[MAX];intspeed;intcount;intscore;intcontrol;inthead;inttear;intx,y;intbabyx,babyy;intclass;inteat;intgame;intgamedelay[]={5000,4000,3000,2000,1000,500,250,100};intga
3、medelay2[]={1000,1};staticinthitme=TRUE,hit=TRUE;voidinit(void);voidnextstatus(void);voiddraw(void);voidinit(void){inti;for(i=0;i4、ear=0;x=1;y=0;babyx=rand()%MAXX;babyy=rand()%MAXY;eat=FALSE;game=GAMESTART;}voidnextstatus(void){inti;intexit;intxx,yy;xx=x;yy=y;switch(control){case1:y--;yy=y-1;break;case2:y++;yy=y+1;break;case3:x--;xx=x-1;break;case4:x++;xx=x+1;break;}hit=TRUE;if(((control==1)5、6、(control7、==2))&&((y<1)8、9、(y>=MAXY-1))10、11、(((control==3)12、13、(control==4))&&((x<1)14、15、(x>=MAXX-1)))){hit=FALSE;}if((y<0)16、17、(y>=MAXY)18、19、(x<0)20、21、(x>=MAXX)){game=GAMEOVER;control=0;return;}for(i=0;i22、lace[i].st)&&(xx==place[i].x)&&(yy==place[i].y)){hit=FALSE;gotoOUT;}}OUT:if((x==babyx)&&(y==babyy)){eat=TRUE;count++;score+=(1+class)*10;}head++;if(head>=MAX)head=0;place[head].x=x;place[head].y=y;place[head].st=TRUE;if(eat==FALSE){place[tear].st=FALSE;tear++;if(tear>=MAX)23、tear=0;}else{eat=FALSE;exit=TRUE;while(exit){babyx=rand()%MAXX;babyy=rand()%MAXY;exit=FALSE;for(i=0;i24、e(1,9);if(place[i].st)bar(place[i].x*15+1,place[i].y*10+1,place[i].x*15+14,place[i].y*10+
4、ear=0;x=1;y=0;babyx=rand()%MAXX;babyy=rand()%MAXY;eat=FALSE;game=GAMESTART;}voidnextstatus(void){inti;intexit;intxx,yy;xx=x;yy=y;switch(control){case1:y--;yy=y-1;break;case2:y++;yy=y+1;break;case3:x--;xx=x-1;break;case4:x++;xx=x+1;break;}hit=TRUE;if(((control==1)
5、
6、(control
7、==2))&&((y<1)
8、
9、(y>=MAXY-1))
10、
11、(((control==3)
12、
13、(control==4))&&((x<1)
14、
15、(x>=MAXX-1)))){hit=FALSE;}if((y<0)
16、
17、(y>=MAXY)
18、
19、(x<0)
20、
21、(x>=MAXX)){game=GAMEOVER;control=0;return;}for(i=0;i22、lace[i].st)&&(xx==place[i].x)&&(yy==place[i].y)){hit=FALSE;gotoOUT;}}OUT:if((x==babyx)&&(y==babyy)){eat=TRUE;count++;score+=(1+class)*10;}head++;if(head>=MAX)head=0;place[head].x=x;place[head].y=y;place[head].st=TRUE;if(eat==FALSE){place[tear].st=FALSE;tear++;if(tear>=MAX)23、tear=0;}else{eat=FALSE;exit=TRUE;while(exit){babyx=rand()%MAXX;babyy=rand()%MAXY;exit=FALSE;for(i=0;i24、e(1,9);if(place[i].st)bar(place[i].x*15+1,place[i].y*10+1,place[i].x*15+14,place[i].y*10+
22、lace[i].st)&&(xx==place[i].x)&&(yy==place[i].y)){hit=FALSE;gotoOUT;}}OUT:if((x==babyx)&&(y==babyy)){eat=TRUE;count++;score+=(1+class)*10;}head++;if(head>=MAX)head=0;place[head].x=x;place[head].y=y;place[head].st=TRUE;if(eat==FALSE){place[tear].st=FALSE;tear++;if(tear>=MAX)
23、tear=0;}else{eat=FALSE;exit=TRUE;while(exit){babyx=rand()%MAXX;babyy=rand()%MAXY;exit=FALSE;for(i=0;i24、e(1,9);if(place[i].st)bar(place[i].x*15+1,place[i].y*10+1,place[i].x*15+14,place[i].y*10+
24、e(1,9);if(place[i].st)bar(place[i].x*15+1,place[i].y*10+1,place[i].x*15+14,place[i].y*10+
此文档下载收益归作者所有