⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 snake.txt

📁 贪吃蛇游戏(TC2.0版本),实现了贪吃蛇的基本功能。
💻 TXT
📖 第 1 页 / 共 2 页
字号:
 font_y=gety();
 setcolor(RED);
 sound(100);delay(4500-score*65);nosound();
 }
 }
 }
 if(key==UP)
 {
 if(font_y<mid_y) goto TURNUP;
 if((font_y==mid_y)&&(font_x<mid_x))
 {
 setcolor(BLUE);
 circle(cir_num_x[0],cir_num_y[0],5);
 circle(cir_num_x[1],cir_num_y[1],5);
 circle(cir_num_x[2],cir_num_y[2],5);
 setcolor(RED);
 moveto(curr_x+11,curr_y);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[0]=getx();
 cir_num_y[0]=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x-11,curr_y);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[1]=getx();
 mid_x=getx();
 mid_y=gety();
 cir_num_y[1]=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x,curr_y-11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[2]=getx();
 cir_num_y[2]=gety();
 font_x=getx();
 font_y=gety();
 circle(curr_x,curr_y,5);
 sound(100);delay(4500-score*65);nosound();
if((curr_x>conec_x-9&&curr_x<conec_x+9)&&(curr_y>conec_y-9&&curr_y<conec_y+9
))
 {setcolor(BLUE);

circle(conec_x,conec_y,5);sound(700);delay(500);nosound();score++;gotoxy(69,
12);printf("%d",score*10);
 while(1){
 conec_x=random(415);
 conec_y=random(465);

if((conec_x%5==0)&&(conec_y%5==0)&&(conec_x>15&&conec_x<400)&&(conec_y>15&&c
onec_y<450))
{ setcolor(RED);
 circle(conec_x,conec_y,5);
 break; }
 }}
 setcolor(BLUE);
 circle(cir_num_x[0],cir_num_y[0],5);
 circle(cir_num_x[1],cir_num_y[1],5);
 circle(cir_num_x[2],cir_num_y[2],5);
 setcolor(RED);
 moveto(curr_x,curr_y+11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[0]=getx();
 cir_num_y[0]=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x,curr_y-11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[1]=getx();
 cir_num_y[1]=gety();
 mid_x=getx();
 mid_y=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x,curr_y-11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[2]=getx();
 cir_num_y[2]=gety();
 font_x=getx();
 font_y=gety();
 circle(curr_x,curr_y,5);
goto TURNUP;
 }
 if((font_y==mid_y)&&(font_x>mid_x))
 {
 setcolor(BLUE);
 circle(cir_num_x[0],cir_num_y[0],5);
 circle(cir_num_x[1],cir_num_y[1],5);
 circle(cir_num_x[2],cir_num_y[2],5);
 setcolor(RED);
 moveto(curr_x-11,curr_y);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[0]=getx();
 cir_num_y[0]=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x+11,curr_y);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[1]=getx();
 cir_num_y[1]=gety();
 mid_x=getx();
 mid_y=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x,curr_y-11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[2]=getx();
 cir_num_y[2]=gety();
 font_x=getx();
 font_y=gety();
 circle(curr_x,curr_y,5);
 sound(100);delay(4500-score*65);nosound();
if((curr_x>conec_x-9&&curr_x<conec_x+9)&&(curr_y>conec_y-9&&curr_y<conec_y+9
))
 {setcolor(BLUE);

circle(conec_x,conec_y,5);sound(700);delay(500);nosound();score++;gotoxy(69,
12);printf("%d",score*10);
 while(1){
 conec_x=random(415);
 conec_y=random(465);

if((conec_x%5==0)&&(conec_y%5==0)&&(conec_x>15&&conec_x<400)&&(conec_y>15&&c
onec_y<450))
{ setcolor(RED);
 circle(conec_x,conec_y,5);
 break;}
 }}
 setcolor(BLUE);
 circle(cir_num_x[0],cir_num_y[0],5);
 circle(cir_num_x[1],cir_num_y[1],5);
 circle(cir_num_x[2],cir_num_y[2],5);
 setcolor(RED);
 moveto(curr_x,curr_y+11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[0]=getx();
 cir_num_y[0]=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x,curr_y-11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[1]=getx();
 cir_num_y[1]=gety();
 mid_x=getx();
 mid_y=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x,curr_y-11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[2]=getx();
 cir_num_y[2]=gety();
 font_x=getx();
 font_y=gety();
 circle(curr_x,curr_y,5);
goto TURNUP;
 }
 if(font_y>mid_y)
 moveto(curr_x,curr_y-22);

while((curr_x>sma_minx+8&&curr_x<sma_maxx-8)&&(curr_y>sma_miny+10&&curr_y<sm
a_maxy)&&(bioskey(1)==0))
 {
 TURNUP:
if((curr_x>conec_x-9&&curr_x<conec_x+9)&&(curr_y>conec_y-9&&curr_y<conec_y+9
))
 {setcolor(BLUE);

circle(conec_x,conec_y,5);sound(700);delay(500);nosound();score++;gotoxy(69,
12);printf("%d",score*10);
 while(1){
 conec_x=random(415);
 conec_y=random(465);

if((conec_x%5==0)&&(conec_y%5==0)&&(conec_x>15&&conec_x<400)&&(conec_y>15&&c
onec_y<450))
{ setcolor(RED);
 circle(conec_x,conec_y,5);
 break;}
 }}
 setcolor(BLUE);
 circle(cir_num_x[0],cir_num_y[0],5);
 circle(cir_num_x[1],cir_num_y[1],5);
 circle(cir_num_x[2],cir_num_y[2],5);
 setcolor(RED);
 moveto(curr_x,curr_y+11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[0]=getx();
 cir_num_y[0]=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x,curr_y-11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[1]=getx();
 cir_num_y[1]=gety();
 mid_x=getx();
 mid_y=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x,curr_y-11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[2]=getx();
 cir_num_y[2]=gety();
 font_x=getx();
 font_y=gety();
 circle(curr_x,curr_y,5);
 sound(100);delay(4500-score*65);nosound();
 }
 }
 if(key==DOWN)
 {
 if(font_y>mid_y) goto TURNDOWN;
 if((font_y==mid_y)&&(font_x<mid_x))
 {
 setcolor(BLUE);
 circle(cir_num_x[0],cir_num_y[0],5);
 circle(cir_num_x[1],cir_num_y[1],5);
 circle(cir_num_x[2],cir_num_y[2],5);
 setcolor(RED);
 moveto(curr_x+11,curr_y);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[0]=getx();
 cir_num_y[0]=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x-11,curr_y);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[1]=getx();
 cir_num_y[1]=gety();
 mid_x=getx();
 mid_y=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x,curr_y+11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[2]=getx();
 cir_num_y[2]=gety();
 font_x=getx();
 font_y=gety();
 circle(curr_x,curr_y,5);
 sound(100);delay(4500-score*65);nosound();
if((curr_x>conec_x-9&&curr_x<conec_x+9)&&(curr_y>conec_y-9&&curr_y<conec_y+9
))
 {setcolor(BLUE);

circle(conec_x,conec_y,5);sound(700);delay(500);nosound();score++;gotoxy(69,
12);printf("%d",score*10);
 while(1){
 conec_x=random(415);
 conec_y=random(465);

if((conec_x%5==0)&&(conec_y%5==0)&&(conec_x>15&&conec_x<400)&&(conec_y>15&&c
onec_y<450))
{ setcolor(RED);
 circle(conec_x,conec_y,5);
 break;}
 }}
 setcolor(BLUE);
 circle(cir_num_x[0],cir_num_y[0],5);
 circle(cir_num_x[1],cir_num_y[1],5);
 circle(cir_num_x[2],cir_num_y[2],5);
 setcolor(RED);
 moveto(curr_x,curr_y-11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[0]=getx();
 cir_num_y[0]=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x,curr_y+11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[1]=getx();
 cir_num_y[1]=gety();
 mid_x=getx();
 mid_y=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x,curr_y+11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[2]=getx();
 cir_num_y[2]=gety();
 font_x=getx();
 font_y=gety();
 circle(curr_x,curr_y,5);
 }
 if((font_y==mid_y)&&(font_x>mid_x))
 {
 setcolor(BLUE);
 circle(cir_num_x[0],cir_num_y[0],5);
 circle(cir_num_x[1],cir_num_y[1],5);
 circle(cir_num_x[2],cir_num_y[2],5);
 setcolor(RED);
 moveto(curr_x-11,curr_y);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[0]=getx();
 cir_num_y[0]=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x+11,curr_y);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[1]=getx();
 cir_num_y[1]=gety();
 mid_x=getx();
 mid_y=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x,curr_y+11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[2]=getx();
 cir_num_y[2]=gety();
 font_x=getx();
 font_y=gety();
 circle(curr_x,curr_y,5);
 sound(100);delay(4500-score*65);nosound();
if((curr_x>conec_x-9&&curr_x<conec_x+9)&&(curr_y>conec_y-96&&curr_y<conec_y+
9))
 {setcolor(BLUE);

circle(conec_x,conec_y,5);sound(700);delay(500);nosound();score++;gotoxy(69,
12);printf("%d",score*10);
 while(1){
 conec_x=random(415);
 conec_y=random(465);

if((conec_x%5==0)&&(conec_y%5==0)&&(conec_x>15&&conec_x<400)&&(conec_y>15&&c
onec_y<450))
{ setcolor(RED);
 circle(conec_x,conec_y,5);
 break;}
 }}
 setcolor(BLUE);
 circle(cir_num_x[0],cir_num_y[0],5);
 circle(cir_num_x[1],cir_num_y[1],5);
 circle(cir_num_x[2],cir_num_y[2],5);
 setcolor(RED);
 moveto(curr_x,curr_y-11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[0]=getx();
 cir_num_y[0]=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x,curr_y+11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[1]=getx();
 cir_num_y[1]=gety();
 mid_x=getx();
 mid_y=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x,curr_y+11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[2]=getx();
 cir_num_y[2]=gety();
 font_x=getx();
 font_y=gety();
 circle(curr_x,curr_y,5);
 }
 if(font_y<mid_y)
 moveto(curr_x,curr_y+22);

while((curr_x>sma_minx+8&&curr_x<sma_maxx-8)&&(curr_y>sma_miny+10&&curr_y<sm
a_maxy)&&(bioskey(1)==0))
 {
 TURNDOWN:
if((curr_x>conec_x-9&&curr_x<conec_x+9)&&(curr_y>conec_y-9&&curr_y<conec_y+9
))
 {setcolor(BLUE);

circle(conec_x,conec_y,5);sound(700);delay(500);nosound();score++;gotoxy(69,
12);printf("%d",score*10);
 while(1){
 conec_x=random(415);
 conec_y=random(465);

if((conec_x%5==0)&&(conec_y%5==0)&&(conec_x>15&&conec_x<400)&&(conec_y>15&&c
onec_y<450))
{ setcolor(RED);
 circle(conec_x,conec_y,5);
 break;}
 }}
 setcolor(BLUE);
 circle(cir_num_x[0],cir_num_y[0],5);
 circle(cir_num_x[1],cir_num_y[1],5);
 circle(cir_num_x[2],cir_num_y[2],5);
 setcolor(RED);
 moveto(curr_x,curr_y-11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[0]=getx();
 cir_num_y[0]=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x,curr_y+11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[1]=getx();
 cir_num_y[1]=gety();
 mid_x=getx();
 mid_y=gety();
 circle(curr_x,curr_y,5);
 moveto(curr_x,curr_y+11);
 curr_x=getx();
 curr_y=gety();
 cir_num_x[2]=getx();
 cir_num_y[2]=gety();
 font_x=getx();
 font_y=gety();
 circle(curr_x,curr_y,5);
 sound(100);delay(4500-score*65);nosound();
 }
  }
if(key==ESC) quit_game();
}
for(freq=10;freq<2000;freq+=100){
sound(freq);
delay(40);
}
for(;freq>10;freq-=10){
sound(freq);
delay(20);
}
nosound();
end_game();
}
}


int get_key()
{
union REGS regs;
regs.h.ah=0;
int86(0x16,&regs,&regs);
return regs.h.ah;
}

void quit_game()
{
int x=0,y=0;
int buttons;
unsigned int size;
void *pt_addr;
int freq;
for(freq=10;freq<2000;freq+=100){
sound(freq);
delay(40);
}
for(;freq>10;freq-=10){
sound(freq);
delay(20);
nosound();}
size=imagesize(150,250,460,350);
pt_addr=malloc(size);
getimage(150,250,460,350,pt_addr);
setcolor(YELLOW);
setfillstyle(SOLID_FILL,CYAN);
rectangle(150,250,460,350);
bar(150+1,250+1,460-1,350-1);
DRAW_3D(195,300,265,330,3);
DRAW_3D(345,300,415,330,3);
setcolor(GREEN);
gotoxy(24,18);printf("Do You Want Exit Game?");
gotoxy(30,21);printf("ok");
gotoxy(47,21);printf("cancel");
for(;;){
read(&x,&y,&buttons);
if(x>=200&&x<=260&&y>=305&&y<=335&&buttons)
{
cleardevice();
clrscr();
system("cls");
exit(0);
}
if(x>=350&&x<=410&&y>=305&&y<=335&&buttons)
{
putimage(150,250,pt_addr,COPY_PUT);
free(pt_addr);
return;}
if(((x<200||x>260||y<305||y>335)&&buttons)||((x<350||x>410||y<305||y>335)&&b
uttons))
printf("\007");
}
 }


int init(int xmi,int xma,int ymi,int yma)
{
int retcode;
regs.x.ax=0;
int86(51,&regs,&regs);
retcode=regs.x.ax;
if(retcode==0)
{printf("Mouse or Mouse Driver Absent,please install!");
exit(1);}
regs.x.ax=1;
int86(51,&regs,&regs);
regs.x.ax=4;
regs.x.cx=620;
regs.x.dx=50;
int86(51,&regs,&regs);
regs.x.ax=7;
regs.x.cx=xmi;
regs.x.dx=xma;
int86(51,&regs,&regs);
regs.x.ax=8;
regs.x.cx=xmi;
regs.x.dx=xma;
int86(51,&regs,&regs);
regs.x.ax=8;
regs.x.cx=ymi;
regs.x.dx=yma;
int86(51,&regs,&regs);
}

int read(int *mx,int *my,int *mbutt)
{
int xx0=*mx,yy0=*my,buto=0;
int xnew,ynew;
do{
regs.x.ax=3;

int86(51,&regs,&regs);
xnew=regs.x.cx;
ynew=regs.x.dx;
*mbutt=regs.x.bx;
}while(xnew==xx0&ynew==yy0&&*mbutt==buto);
*mx=xnew;
*my=ynew;
if(*mbutt){
*mx=xnew;
*my=ynew;
return -1;
}
else{
*mx=xnew;
*my=ynew;
return 1;
}
}

void end_game()
{
int x=0,y=0;
int buttons;
unsigned int size;
void *pt_addr;
size=imagesize(150,250,460,350);
pt_addr=malloc(size);
getimage(150,250,460,350,pt_addr);
setcolor(YELLOW);
setfillstyle(SOLID_FILL,CYAN);
rectangle(150,250,460,350);
bar(150+1,250+1,460-1,350-1);
DRAW_3D(195,300,265,330,3);
DRAW_3D(345,300,415,330,3);
setcolor(GREEN);
gotoxy(24,18);printf("Game Over,Play It again?");
gotoxy(30,21);printf("ok");
gotoxy(47,21);printf("cancel");
for(;;){
read(&x,&y,&buttons);
if(x>=200&&x<=260&&y>=305&&y<=335&&buttons)
{
putimage(150,250,pt_addr,COPY_PUT);
free(pt_addr);
return;
}
if(x>=350&&x<=410&&y>=305&&y<=335&&buttons)
{
cleardevice();
exit(0);
}
if(((x<200||x>260||y<305||y>335)&&buttons)||((x<350||x>410||y<305||y>335)&&b
uttons))
printf("\007");
}
 }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -