欢迎光临散文网 会员登陆 & 注册

自制C++小游戏

2020-11-27 20:31 作者:Memory142857  | 我要投稿

一个迷宫小游戏,只有一个地图(很垃圾,小菜鸟第一次做,用的是Dev-C++)

代码非常啰嗦

代码:

(惨不忍睹)



#include<iostream>

#include<cstdio>

#include<time.h>

#include<conio.h>

#include<cstdlib>

#include<windows.h>

#include<algorithm>

using namespace std;

int x=1,y=1;

int x1=1,y1=1;

int bs=0;

int bz=0,bz1=0;

int mg[11][21]= {   {5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5},

{5,3,1,1,0,1,1,0,1,0,1,1,0,1,0,1,0,1,1,5},

{5,0,1,0,0,1,0,0,1,0,0,1,0,0,0,1,0,0,1,5},

{5,0,1,0,1,1,0,1,1,1,0,1,0,1,0,1,1,0,0,5},

{5,0,0,0,0,0,0,1,0,1,0,0,0,1,0,0,1,0,1,5},

{5,1,1,1,0,1,0,1,0,1,1,0,1,1,1,0,0,0,0,5},

{5,0,0,1,0,1,0,0,0,0,0,0,1,0,0,0,1,0,1,5},

{5,0,1,1,1,1,0,1,1,0,1,0,1,1,0,1,1,0,1,5},

{5,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,2,5},

{5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5}

};

void ok() {

system("CLS");

if(mg[x][y]==2) {

printf("You win!!!\n\n");

printf("最后步数:%d\n\n",bs);

printf("最后用时:%ds\n\n",clock()/1000);

exit(0);

}

}

void shang() {

bz=0;

bs++;

int x1=x,y1=y;

if(mg[--x][y]==0||mg[x][y]==2||mg[x][y]==3) {

ok();

mg[x][y]=3;

} else {

x++;

bz=1;

bs--;

}

mg[x1][y1]=0;

}

void zuo() {

bz=0;

bs++;

int x1=x,y1=y;

if(mg[x][--y]==0||mg[x][y]==2||mg[x][y]==3) {

ok();

mg[x][y]=3;

} else {

y++;

bz=1;

bs--;

}

mg[x1][y1]=0;

}

void xia() {

bz=0;

bs++;

int x1=x,y1=y;

if(mg[++x][y]==0||mg[x][y]==2||mg[x][y]==3) {

ok();

mg[x][y]=3;

} else {

x--;

bz=1;

bs--;

}

mg[x1][y1]=0;

}

void you() {

bz=0;

bs++;

int x1=x,y1=y;

if(mg[x][++y]==0||mg[x][y]==2||mg[x][y]==3) {

ok();

mg[x][y]=3;

} else {

y--;

bz=1;

bs--;

}

mg[x1][y1]=0;

}

int main() {

system("color 8F");

printf("欢迎游玩迷宫\n");

Sleep(1000);

printf("制作人:11842116380\n");

Sleep(1000);

printf("操作方法:键盘wasd键分别代表上左下右\n");

Sleep(1000);

printf("开始!\n");

Sleep(1000);

system("CLS");

while(1) {

if(bz==0) {

for(int i=0; i<10; i++) {

for(int j=0; j<20; j++) {

if(mg[i][j]==1||mg[i][j]==5) printf("█");

else if(mg[i][j]==2) printf("* ");

else if(mg[i][j]==3) printf("●");

else printf("  ");

}

printf("\n");

}

printf("\n");

printf("当前步数:%d",bs);

}

char a;

a=_getch();

if(a=='w'||a=='W') shang();

else if(a=='a'||a=='A') zuo();

else if(a=='s'||a=='S') xia();

else if(a=='d'||a=='D') you();

else bz=1;

}

return 0;

}


杜绝抄袭(虽然我觉得没人会要我的垃圾小游戏的)

自制C++小游戏的评论 (共 条)

分享到微博请遵守国家法律