又一个贪吃蛇

王朝other·作者佚名  2008-06-01
窄屏简体版  字體: |||超大  

有可能delay()函数里的数字大家要自己调整下.基本的结构因为完善了.

#include "graphics.h"

#include "stdlib.h"

#define LEFT 0x4b00

#define RIGHT 0x4d00

#define DOWN 0x5000

#define UP 0x4800

#define ESC 0x011b

int lose=0,i,j;

int gd=DETECT,gr,x[200]=,y[200]=;

int key,t=1,n=4,s=0,xx,yy,yes=1;

int score[8]=;

begain()/*开始画面*/

for(i=40;i<=450;i+=10)

}

over()/*结束的话*/

win()/*胜利*/

doscore()/*处理分数*/

}

printscore(int n)/*输出成绩*/

}

}

main()

yes=0;

}

if(yes==0)/*画要吃的东西*/

for(i=n-1;i>0;i--)/*每个往前移动*/

if(t==1)/*right*/

x[0]+=10;

else if(t==2)/*left*/

x[0]-=10;

else if(t==3)/*up*/

y[0]-=10;

else if(t==4)/*down*/

y[0]+=10;

for(i=3;i<n;i++)

if(x[i]==x[0]&&y[i]==y[0])/*蛇的身体是否自己接触*/

if(x[0]<55x[0]>595y[0]<55y[0]>455)/*失败条件*/

if(lose)

break;

if(x[0]==xx&&y[0]==yy&&n<200)/*长身体*/

else if(t==2)

else if(t==3)

else if(t==4)

yes=1;

}

if(n==199)

setcolor(4);/*画出来*/

for(i=0;i<n;i++)

rectangle(x[i],y[i],x[i]+10,y[i]-10);

delay(5000);

setcolor(0);

for(i=0;i<n;i++)

rectangle(x[i],y[i],x[i]+10,y[i]-10);

}

if(lose)

break;

key=bioskey(0);/*按键的影响*/

if(key==ESC)

break;

else if(key==UP&&t!=4)

t=3;

else if(key==RIGHT&&t!=2)

t=1;

else if(key==LEFT&&t!=1)

t=2;

else if(key==DOWN&&t!=3)

t=4;

}

getch();

closegraph();

}

(出处:清风软件下载学院)

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航