📄 main.c
字号:
{
int i,j,n1=0;
char a[20][70],ch,ch1;
/*全部变空格*/
for(i=0;i<20;i++)
for(j=0;j<70;j++)
a[i][j]=' ';
/*围墙设置*/
for(j=0;j<70;j++)
{
a[0][j]='#';
a[19][j]='#';
}
for(i=0;i<20;i++)
{
a[i][0]='#';
a[i][69]='#';
}
/*设置出口*/
a[10][0]=' ';
/*建筑房屋*/
for(j=32;j<48;j++)
{
a[6][j]='#';
a[13][j]='#';
}
for(i=7;i<13;i++)
{
a[i][47]='#';
a[i][32]='#';
}
/*NPC的设置*/
a[10][31]='!';
a[10][32]=' ';
/*以背景色输出*/
system("cls");
system("color 8f");
printf("\t\t\t\t挑战台\n");
for(i=0;i<20;i++)
{
for(j=0;j<70;j++)
printf("%c",a[i][j]);
printf("\n");
}
game_show();
gotoxy(x,y);printf("%c",1);
gotoxy(34,9);printf("青龙");
gotoxy(44,9);printf("白虎");
gotoxy(34,14);printf("玄武");
gotoxy(44,14);printf("朱雀");
while(x>1)
{
/*人物的移动*/
ch=getch();
if( ((int)ch==a_1) && (a[y-3][x-1]==' ') )
{
gotoxy(x,y);printf(" ");
y=y-1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
else if( ((int)ch==a_4) && (a[y-2][x]==' ') )
{
gotoxy(x,y);printf(" ");
x=x+1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
else if( ((int)ch==a_3) && (a[y-2][x-2]==' ') )
{
gotoxy(x,y);printf(" ");
x=x-1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
else if( ((int)ch==a_2) && (a[y-1][x-1]==' ') )
{
gotoxy(x,y);printf(" ");
y=y+1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
else if((int)ch==13&&(a[y-2][x]=='!'||a[y-2][x-2]=='!'||a[y-3][x-1]=='!'))
{
system("cls");
system("color f4");
gotoxy(27,2);printf("你想挑战哪一个?");
gotoxy(33,7);printf("青龙(攻高)");
gotoxy(33,9);printf("白虎(防高)");
gotoxy(33,11);printf("玄武(血厚)");
gotoxy(33,13);printf("朱雀(平衡)");
gotoxy(33,15);printf("算了,我不挑战");
gotoxy(31,7);printf("%c",16);
ch1=getch();
while(ch1!=13)
{
if(ch1==a_2)
{
n1=n1+2;
if(n1>8)n1=n1-2;
gotoxy(31,n1+5);printf(" ");
gotoxy(31,7+n1);printf("%c",16);
}
if(ch1==a_1)
{
n1=n1-2;
if(n1<0)n1=n1+2;
gotoxy(31,9+n1);printf(" ");
gotoxy(31,7+n1);printf("%c",16);
}
ch1=getch();
}
if(n1==0)
{
enter(7);
attack(7);
}
if(n1==2)
{
enter(8);
attack(8);
}
if(n1==4)
{
enter(9);
attack(9);
}
if(n1==6)
{
enter(10);
attack(10);
}
if(n1==8)
{
}
getch();
map_3(x2,y2);
}
if(ch==look)
{
man_look();
map_3(x2,y2);
}
}
if(x==1)
map_2(69,12);
}
void map_4(int x,int y) //第四张地图
{
//ch_0定义为初始时说村子奇怪的话
char ch;// ch是人物移动命令
int i,j;
char a[20][70];
/*全部变空格*/
for(i=0;i<20;i++)
for(j=0;j<70;j++)
a[i][j]=' ';
/*围墙设置*/
for(j=0;j<70;j++)
{
a[0][j]='#';
a[19][j]='#';
}
for(i=0;i<20;i++)
{
a[i][0]='#';
a[i][69]='#';
}
/*设置出口*/
a[0][33]=' ';
a[19][40]=' ';
/*建筑房屋*/
for(j=16;j>1;j-=1)
a[j+2][j+44]='*';
for(j=2;j<18;j+=1)
a[j+1][j+1]='*';
for(i=2;i<66;i+=2)
a[3][i+1]='*';
/*NPC的设置*/
a[18][2]='$';
a[18][3]='$';
a[17][2]='$';
a[17][3]='$';
a[5][60]='!';
/*以背景色输出*/
system("cls");
system("color 8f");
printf("\t\t\t\t万哭洞\n");
for(i=0;i<20;i++)
{
for(j=0;j<70;j++)
printf("%c",a[i][j]);
printf("\n");
}
game_show();
gotoxy(x,y);printf("%c",1);
while(y<21&&y>2)
{
/*人物的移动*/
ch=getch();
if( ((int)ch==a_1) && (a[y-3][x-1]==' ') )
{
gotoxy(x,y);printf(" ");
y=y-1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
else if( ((int)ch==a_4) && (a[y-2][x]==' ') )
{
gotoxy(x,y);printf(" ");
x=x+1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
else if( ((int)ch==a_3) && (a[y-2][x-2]==' ') )
{
gotoxy(x,y);printf(" ");
x=x-1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
else if( ((int)ch==a_2) && (a[y-1][x-1]==' ') )
{
gotoxy(x,y);printf(" ");
y=y+1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
else if(m4==0&&ch==13&&(a[y-2][x]=='$'||a[y-2][x-2]=='$'||a[y-3][x-1]=='$'))
{
gotoxy(1,22);printf("你找到一件连环战铠!");
m4=1;save(man.cloth,2);
dalay(1);
gotoxy(1,22);printf(" ");
}
if(ch==13&&(a[y-2][x]=='!'||a[y-2][x-2]=='!'||a[y-3][x-1]=='!'))
{
gotoxy(1,22);printf("淘宝者:这该死的熊精,我早晚要把它们杀光!");
dalay(1);
gotoxy(1,22);printf(" ");
}
if(ch==look)
{
man_look();
map_4(x,y);
}
if( 7==rand()%22 )
{
enter(1);
attack(1);
getch();
map_4(x,y);
}
}
if(y==2)
{
map_5(34,20);
}
if(y==21)
{
map_2(41,3);
}
}
void map_5(int x,int y) //第五张地图
{
char ch;// ch是人物移动命令
int i,j;
char a[20][70];
/*全部变空格*/
for(i=0;i<20;i++)
for(j=0;j<70;j++)
a[i][j]=' ';
/*围墙设置*/
for(j=0;j<70;j++)
{
a[0][j]='#';
a[19][j]='#';
}
for(i=0;i<20;i++)
{
a[i][0]='#';
a[i][69]='#';
}
/*建筑房屋*/
for(j=0;j<8;j+=1)
{
a[j+1][1]='#';
a[j+1][2]='#';
a[j+1][33]='#';
}
for(i=0;i<33;i+=1)
a[8][i+1]='#';
for(i=0;i<18;i+=2)
a[15][i+1]='#';
for(i=35;i<66;i+=3)
a[11][i+1]='#';
/*设置出口*/
a[19][33]=' ';
a[8][20]=' ';
/*NPC的设置*/
a[18][2]='$';
a[18][3]='$';
a[17][2]='$';
a[17][3]='$';
if(m<2)a[9][20]='!';
/*以背景色输出*/
system("cls");
system("color 8f");
printf("\t\t\t\t黑水潭\n");
for(i=0;i<20;i++)
{
for(j=0;j<70;j++)
printf("%c",a[i][j]);
printf("\n");
}
game_show();
gotoxy(x,y);printf("%c",1);
if(m<2)
{
for(i=3;i<10;i++)
{
gotoxy(2,i);printf("%c",2);
}
for(i=3;i<10;i++)
{
gotoxy(3,i);printf("%c",2);
}
}
while(y<21)
{
/*人物的移动*/
ch=getch();
if( ((int)ch==a_1) && (a[y-3][x-1]==' ') )
{
gotoxy(x,y);printf(" ");
y=y-1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
else if( ((int)ch==a_4) && (a[y-2][x]==' ') )
{
gotoxy(x,y);printf(" ");
x=x+1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
else if( ((int)ch==a_3) && (a[y-2][x-2]==' ') )
{
gotoxy(x,y);printf(" ");
x=x-1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
else if( ((int)ch==a_2) && (a[y-1][x-1]==' ') )
{
gotoxy(x,y);printf(" ");
y=y+1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
else if(m5==0&&ch==13&&(a[y-2][x]=='$'||a[y-2][x-2]=='$'||a[y-3][x-1]=='$'))
{
gotoxy(1,22);printf("你找到一个金创药!");
m5=1;man.h_med+=1;
dalay(1);
gotoxy(1,22);printf(" ");
}
if(m==1&&ch==13&&(a[y-2][x]=='!'||a[y-2][x-2]=='!'||a[y-3][x-1]=='!'))
{
gotoxy(1,22);printf("%s: 想救他们,先过我这关再说!",monster[5].name);
dalay(1);
enter(5);
attack(5);
m=2;
map_5(x,y);
}
if(m!=1&&ch==13&&(a[y-2][x]=='!'||a[y-2][x-2]=='!'||a[y-3][x-1]=='!'))
{
gotoxy(1,22);printf("%s: 小孩子再让我看到你,小心我把你给吃了! ",monster[5].name);
dalay(1);
gotoxy(1,22);printf(" ");
}
if(ch==look)
{
man_look();
map_5(x,y);
}
if( 7==rand()%25 )
{
enter(2);
attack(2);
getch();
map_5(x,y);
}
}
map_4(34,3);
}
void map_6(int x,int y) //第6张地图
{
char ch;// ch是人物移动命令
int i,j;
char a[20][70];
/*全部变空格*/
for(i=0;i<20;i++)
for(j=0;j<70;j++)
a[i][j]=' ';
/*围墙设置*/
for(j=0;j<70;j++)
{
a[0][j]='#';
a[19][j]='#';
}
for(i=0;i<20;i++)
{
a[i][0]='#';
a[i][69]='#';
}
/*建筑房屋*/
for(j=0;j<8;j+=1)
{
a[j+1][33]='#';
}
for(i=46;i<65;i+=3)
a[5][i]='*';
for(i=1;i<13;i+=2)
a[8][i+1]='*';
for(i=35;i<66;i+=3)
a[17][i+1]='*';
/*设置出口*/
a[11][69]=' ';
a[0][40]=' ';
/*NPC的设置*/
a[18][2]='*';
a[18][3]='*';
a[17][2]='*';
a[17][3]='*';
a[9][1]='!';
/*以背景色输出*/
system("cls");
system("color ac");
printf("\t\t\t\t桃花林\n");
for(i=0;i<20;i++)
{
for(j=0;j<70;j++)
printf("%c",a[i][j]);
printf("\n");
}
game_show();
gotoxy(x,y);printf("%c",1);
while(x<70&&y>2)
{
/*人物的移动*/
ch=getch();
if( ((int)ch==a_1) && (a[y-3][x-1]==' ') )
{
gotoxy(x,y);printf(" ");
y=y-1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
else if( ((int)ch==a_4) && (a[y-2][x]==' ') )
{
gotoxy(x,y);printf(" ");
x=x+1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
else if( ((int)ch==a_3) && (a[y-2][x-2]==' ') )
{
gotoxy(x,y);printf(" ");
x=x-1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
else if( ((int)ch==a_2) && (a[y-1][x-1]==' ') )
{
gotoxy(x,y);printf(" ");
y=y+1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
if(ch==look)
{
man_look();
map_6(x,y);
}
if(ch==13&&(a[y-2][x]=='!'||a[y-2][x-2]=='!'||a[y-3][x-1]=='!'))
{
gotoxy(1,22);printf("柴夫:这该死的狐狸很厉害,壮士你要小心了!");
dalay(1);
gotoxy(1,22);printf(" ");
}
if(7==rand()%20)
{
system("cls");
system("color 24");
enter(3);
attack(3);
getch();
map_6(x,y);
}
}
if(x==70)
map_7(2,13);
if(y==2)
map_2(41,20);
}
void map_7(int x,int y) //第7张地图
{
char ch;// ch是人物移动命令
int i,j;
char a[20][70];
/*全部变空格*/
for(i=0;i<20;i++)
for(j=0;j<70;j++)
a[i][j]=' ';
/*围墙设置*/
for(j=0;j<70;j++)
{
a[0][j]='#';
a[19][j]='#';
}
for(i=0;i<20;i++)
{
a[i][0]='#';
a[i][69]='#';
}
/*建筑房屋*/
for(j=0;j<8;j+=1)
{
a[j+1][33]='#';
}
for(i=46;i<65;i+=3)
a[5][i]='#';
for(i=1;i<13;i+=2)
a[8][i+1]='^';
for(i=35;i<66;i+=3)
a[17][i+1]='#';
/*设置出口*/
a[11][0]=' ';
/*NPC的设置*/
a[18][2]='^';
a[18][3]='^';
a[17][2]='^';
a[17][3]='^';
if(m<4)
{
a[12][58]='!';
}
/*以背景色输出*/
system("cls");
system("color 8f");
printf("\t\t\t\t黑山洞\n");
for(i=0;i<20;i++)
{
for(j=0;j<70;j++)
printf("%c",a[i][j]);
printf("\n");
}
game_show();
gotoxy(x,y);printf("%c",1);
while(x>1)
{
/*人物的移动*/
ch=getch();
if( ((int)ch==a_1) && (a[y-3][x-1]==' ') )
{
gotoxy(x,y);printf(" ");
y=y-1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
else if( ((int)ch==a_4) && (a[y-2][x]==' ') )
{
gotoxy(x,y);printf(" ");
x=x+1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
else if( ((int)ch==a_3) && (a[y-2][x-2]==' ') )
{
gotoxy(x,y);printf(" ");
x=x-1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
else if( ((int)ch==a_2) && (a[y-1][x-1]==' ') )
{
gotoxy(x,y);printf(" ");
y=y+1;
gotoxy(x,y);printf("%c",1);
gotoxy(1,22);
}
if(ch==look)
{
man_look();
map_7(x,y);
}
if(m==3&&ch==13&&(a[y-2][x]=='!'||a[y-2][x-2]=='!'||a[y-3][x-1]=='!'))
{
gotoxy(1,22);printf("%s: 哦,你就是孤星月,受死吧! ",monster[6].name);
dalay(1);
enter(6);
attack(6);
getch();
m1=4;
map_7(x,y);
}
if(m!=3&&ch==13&&(a[y-2][x]=='!'||a[y-2][x-2]=='!'||a[y-3][x-1]=='!'))
{
gotoxy(1,22);printf("%s: 小孩子不要命了吗,还不快走开!",monster[6].name);
dalay(1);
gotoxy(1,22);printf(" ");
}
if(7==rand()%20)
{
enter(4);
attack(4);
getch();
map_7(x,y);
}
}
if(x==1)
map_6(69,13);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -