代码更直观,把运行部分封装成了一个函数
#include
#include
#include
#include
using namespace std;
int a,a1,b,b1,gb,c,d;
int cd1,cd2,tc;
int ax;
//1.新手教程 2.蹦床世界 3.明枪易躲,暗箭难防 4.明枪易躲,暗箭难防(2) 5.简简单单(隐藏关卡解锁关) 6.刺刺世界(隐藏)
string mapp1[2][25]={
{
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ----- -- -- - ----- ",
" - ",
"---- -- ",
" ",
" ",
" ",
"----^--= ",
" ---= ",
" ",
" |- ",
" $ ",
" ---- ",
"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^",
},
{
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ==^ ",
" - --^ ",
" ",
" ",
" ",
" ",
" ",
" ==^ ",
" --- < ",
" < ",
" --- ",
" -- ",
" -- ^ ",
"--^ ---- - ^ $ ",
" ----= >-- ",
"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^",
}
};
void sb_ycksbj();
void sb_yd(int x,int y);
void sb_yc();
void g1();
void g2();
void sb_ycksbj()
{
HANDLE hStdin=GetStdHandle(STD_INPUT_HANDLE);
DWORD mode;
GetConsoleMode(hStdin,&mode);
mode&=~ENABLE_QUICK_EDIT_MODE; //移除快速编辑模式
mode&=~ENABLE_INSERT_MODE; //移除插入模式
mode&=~ENABLE_MOUSE_INPUT;
SetConsoleMode(hStdin, mode);
}
void sb_yd(int x,int y) //光标移动到x,y
{
HANDLE handle=GetStdHandle(STD_OUTPUT_HANDLE);
COORD pos;
pos.X=x;
pos.Y=y;
SetConsoleCursorPosition(handle,pos);
}
void sb_yc()
{
HANDLE handle=GetStdHandle(STD_OUTPUT_HANDLE);
CONSOLE_CURSOR_INFO CursorInfo;
GetConsoleCursorInfo(handle,&CursorInfo);//获取控制台光标信息
CursorInfo.bVisible=false; //隐藏控制台光标
SetConsoleCursorInfo(handle,&CursorInfo);//设置控制台光标状态
}
void gq_yx(int x,int y,char z,int l)
{
int x1=x,yy1=y,ax;
sb_yd(x1,yy1);
cout<')
{
sb_yd(x1,yy1);
cout<<" ";
x1=x;
yy1=y;
sb_yd(x1,yy1);
cout<')
{
sb_yd(x1,yy1);
cout<<" ";
x1=x;
yy1=y;
sb_yd(x1,yy1);
cout<')
{
sb_yd(x1,yy1);
cout<<" ";
x1=x;
yy1=y;
sb_yd(x1,yy1);
cout<
----------------------------------------------------未登录用户分界线-----------------------------------------------------
#include
#include
#include
#include
using namespace std;
int a,a1,b,b1,gb,c,d;
int cd1,cd2,tc;
int ax;
//1.新手教程 2.蹦床世界 3.明枪易躲,暗箭难防 4.明枪易躲,暗箭难防(2) 5.简简单单(隐藏关卡解锁关) 6.刺刺世界(隐藏)
string mapp1[2][25]={
{
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ----- -- -- - ----- ",
" - ",
"---- -- ",
" ",
" ",
" ",
"----^--= ",
" ---= ",
" ",
" |- ",
" $ ",
" ---- ",
"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^",
},
{
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ==^ ",
" - --^ ",
" ",
" ",
" ",
" ",
" ",
" ==^ ",
" --- < ",
" < ",
" --- ",
" -- ",
" -- ^ ",
"--^ ---- - ^ $ ",
" ----= >-- ",
"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^",
}
};
void sb_ycksbj();
void sb_yd(int x,int y);
void sb_yc();
void g1();
void g2();
void sb_ycksbj()
{
HANDLE hStdin=GetStdHandle(STD_INPUT_HANDLE);
DWORD mode;
GetConsoleMode(hStdin,&mode);
mode&=~ENABLE_QUICK_EDIT_MODE; //移除快速编辑模式
mode&=~ENABLE_INSERT_MODE; //移除插入模式
mode&=~ENABLE_MOUSE_INPUT;
SetConsoleMode(hStdin, mode);
}
void sb_yd(int x,int y) //光标移动到x,y
{
HANDLE handle=GetStdHandle(STD_OUTPUT_HANDLE);
COORD pos;
pos.X=x;
pos.Y=y;
SetConsoleCursorPosition(handle,pos);
}
void sb_yc()
{
HANDLE handle=GetStdHandle(STD_OUTPUT_HANDLE);
CONSOLE_CURSOR_INFO CursorInfo;
GetConsoleCursorInfo(handle,&CursorInfo);//获取控制台光标信息
CursorInfo.bVisible=false; //隐藏控制台光标
SetConsoleCursorInfo(handle,&CursorInfo);//设置控制台光标状态
}
void gq_yx(int x,int y,char z,int l)
{
int x1=x,yy1=y,ax;
sb_yd(x1,yy1);
cout<
{
if(kbhit()!=0)
{
ax=getch();
if(ax==224)
{
ax=getch();
if(ax==72)
{
for(int j=1;j<=4;j++)
{
_sleep(100);
if(yy1!=0&&mapp1[l][yy1-1][x1]==' '||mapp1[l][yy1-1][x1]=='$'&&mapp1[l][yy1-1][x1]!='|')
{
sb_yd(x1,yy1);
cout<<" ";
yy1--;
sb_yd(x1,yy1);
cout<
{
ax=getch();
if(ax==224)
{
ax=getch();
if(ax==75)
{
if(x1!=0&&mapp1[l][yy1][x1-1]==' '||mapp1[l][yy1][x1-1]=='$'&&mapp1[l][yy1][x1-1]!='|')
{
x1--;
sb_yd(x1,yy1);
cout<
}
if(ax==77)
{
if(x1!=49&&mapp1[l][yy1][x1+1]==' '||mapp1[l][yy1][x1+1]=='$'&&mapp1[l][yy1][x1+1]!='|')
{
sb_yd(x1,yy1);
cout<<" "<
}
}
}
if(ax==122||ax==90)
{
system("cls");
sb_yd(0,0);
for(int i=0;i<24;i++)
{
cout<
cout<
sb_yd(x1,yy1);
cout<
}
}
}
}
if(ax==75)
{
if(x1!=0&&mapp1[l][yy1][x1-1]==' '||mapp1[l][yy1][x1-1]=='$'&&mapp1[l][yy1][x1-1]!='|')
{
x1--;
sb_yd(x1,yy1);
cout<
}
if(ax==77)
{
if(x1!=49&&mapp1[l][yy1][x1+1]==' '||mapp1[l][yy1][x1+1]=='$'&&mapp1[l][yy1][x1+1]!='|')
{
sb_yd(x1,yy1);
cout<<" "<
}
}
}
if(ax==122||ax==90)
{
system("cls");
sb_yd(0,0);
for(int i=0;i<24;i++)
{
cout<
cout<
sb_yd(x1,yy1);
cout<
}
while(mapp1[l][yy1+1][x1]==' '||mapp1[l][yy1+1][x1]=='$')
{
_sleep(100);
sb_yd(x1,yy1);
cout<<" ";
yy1+=1;
sb_yd(x1,yy1);
cout<
{
ax=getch();
if(ax==224)
{
ax=getch();
if(ax==75)
{
if(x1!=0&&mapp1[l][yy1][x1-1]==' '||mapp1[l][yy1][x1-1]=='$'&&mapp1[l][yy1][x1-1]!='|')
{
x1--;
sb_yd(x1,yy1);
cout<
}
if(ax==77)
{
if(x1!=49&&mapp1[l][yy1][x1+1]==' '||mapp1[l][yy1][x1+1]=='$'&&mapp1[l][yy1][x1+1]!='|')
{
sb_yd(x1,yy1);
cout<<" "<
}
}
}
if(ax==122||ax==90)
{
system("cls");
sb_yd(0,0);
for(int i=0;i<24;i++)
{
cout<
cout<
sb_yd(x1,yy1);
cout<
}
if(mapp1[l][yy1+1][x1]=='^'||mapp1[l][yy1][x1+1]=='<'||mapp1[l][yy1][x1-1]=='>')
{
sb_yd(x1,yy1);
cout<<" ";
x1=x;
yy1=y;
sb_yd(x1,yy1);
cout<
}
if(mapp1[l][yy1+1][x1]=='=')
{
int jc=1;
for(int j=1;j<=8;j++)
{
if(mapp1[l][yy1-1][x1]==' ')
{
_sleep(10);
sb_yd(x1,yy1);
cout<<" ";
yy1--;
sb_yd(x1,yy1);
cout<
{
ax=getch();
if(ax==224)
{
ax=getch();
if(ax==75)
{
if(x1!=0&&mapp1[l][yy1][x1-1]==' '||mapp1[l][yy1][x1-1]=='$'&&mapp1[l][yy1][x1-1]!='|')
{
x1--;
sb_yd(x1,yy1);
cout<
}
if(ax==77)
{
if(x1!=49&&mapp1[l][yy1][x1+1]==' '||mapp1[l][yy1][x1+1]=='$'&&mapp1[l][yy1][x1+1]!='|')
{
sb_yd(x1,yy1);
cout<<" "<
}
}
}
if(ax==122||ax==90)
{
system("cls");
sb_yd(0,0);
for(int i=0;i<24;i++)
{
cout<
cout<
sb_yd(x1,yy1);
cout<
}
}
if(mapp1[l][yy1+1][x1]=='^'||mapp1[l][yy1][x1+1]=='<'||mapp1[l][yy1][x1-1]=='>')
{
sb_yd(x1,yy1);
cout<<" ";
x1=x;
yy1=y;
sb_yd(x1,yy1);
cout<
}
}
if(mapp1[l][yy1+1][x1]=='^'||mapp1[l][yy1][x1+1]=='<'||mapp1[l][yy1][x1-1]=='>')
{
sb_yd(x1,yy1);
cout<<" ";
x1=x;
yy1=y;
sb_yd(x1,yy1);
cout<
if(mapp1[l][yy1][x1]=='$')
{
_sleep(10);
system("cls");
sb_yd(0,0);
cout<<"你赢了!"<
if(getch()==' ')
{
system("cls");
sb_yd(0,0);
return;
}
}
}
}
void g1()
{
cout<
cout<
system("cls");
for(int i=0;i<24;i++)
{
cout<
cout<
gq_yx(0,17,c,0);
}
void g2()
{
cout<
system("cls");
for(int i=0;i<24;i++)
{
cout<
cout<
gq_yx(0,21,c,1);
}
int hy()
{
if(c==0)
{
cout<<"\n\n\n\n\n\n\n\n\n\n\n\n ============欢迎============ "<
_sleep(1000);
srand(time(0));
system("cls");
}
cout<<"\n\n\n\n\n\n\n 首页\n\n\n\n\n";
cout<<" 1.开始游戏\n\n\n\n";
cout<<" 2.退出";
a=0;
a=getch()-'0';
return a;
}
void gq()
{
for(;;)
{
cout<<"\n\n\n\n\n\n 关卡\n\n\n\n\n"<
a=getch()-'0';
switch(a)
{
case 1 :
{
system("cls");
g1();
break;
}
case 2 :
{
system("cls");
g2();
break;
}
case 3 :
{
system("cls");
tc=1;
break;
}
default:
{
system("cls");
cout<<"\n\n\n\n\n\n\n\n\n\n\n\n 请输入正确的字符!!!";
system("cls");
continue;
}
}
if(tc==1)
{
tc=0;
break;
}
}
system("cls");
return ;
}
int main()
{
sb_ycksbj();
sb_yc();
system("title 跑酷游戏");
system("mode con cols=50 lines=25");
for(;;)
{
hy();
if(a==1||a==2)
{
if(a==1)
{
system("cls");
gq();
}
if(a==2)
{
system("cls");
cout<
system("cls");
exit(0);
}
}
else
{
system("cls");
cout<<"\n\n\n\n\n\n\n\n\n\n\n\n 请输入正确的字符!!!";
system("cls");
continue;
}
}
}