自制迷宫小游戏 :O 的冒险

  大概在十月时候学二维数组时候完成的,对于游戏有点想法,于是去学习了迷宫的制作,了解了一些界面设置,清屏操作,界面颜色的东西,纯属个人兴趣罢了。

  在迷宫的基本思路上增加了道具的存在,因为做的比较早,所以非常简陋,但是要通关可能还有点难度吧,这样也让可玩性高了些?(纯属个人觉得)

  道具的作用没有说明,所以试错可能会高,有点像iwanna(bushi),总之,有兴趣的朋友可以尝试一下。发此贴记录下

下面是游戏代码:(C语言)

#include<stdio.h>
#include<conio.h>
#include<windows.h>

void Welcome()
{
	system("color F9");
	printf("\n\n     o 的 迷 宫 ");
	printf("\n\n      作者:kk"); 
	printf("\n\n 按下任意键以开始游戏") ;
	getch();
	system("cls"); 
}
void instru()
{
	system("color F4");
	printf("\n\n      《游戏说明》 \n \n  ");
	printf("    上移:按键W \n");
	printf("      下移:按键S \n");
	printf("      左移:按键A \n");
	printf("      右移:按键D \n\n"); 
	printf("     碰到$即为死亡\n\n"); 
	printf("  ?、!、* 为游戏道具 用途不明 有待探索 \n\n") ;
	printf("   o吃下道具有时会变为0\n\n") ;
	printf("  按下任意键以确认正式开始:\n") ;
	getch();
	system("cls");
	
}
char a[20][20]={"$$$$$$$$$$$$$$$ ",
                "$o   ?        $ ",
                "$$$$$$!$$  $$$$ ",
                "$        $ *  $ ",
			    "$$ $$$ $ $$ $ $ ",
				"$$  ? $   !$    ",
				"$$$$$$$$$$$$$$$ ",};
				
				
int main()
{
	Welcome();
	instru();
	system("color F0");
	int x,y,i;
	char ch;
	x=1,y=1;
	for(i=0;i<=6;i++)
	 puts(a[i]);
	 while(1)
	 {
	 	ch=getch(); 
	 	if(a[2][12]=='O')
	 	{
	 		a[4][13]='$';
	 	}
	 	else if(a[x][y]=='0')
	 	{
	 		if(ch=='d')
	 	{
	 		if(a[x][y+1]=='$')
	 		{
	 			a[x][y+1]=' ';
	 			a[x][y]=' ';
	 			y++;
	 			a[x][y]='o';
	 			a[3][10]='$';
	 		}
		}
	 	}
	 	if(ch=='s')
	 	{
	 		if(a[x+1][y]==' ')
	 		{
	 			a[x][y]=' ';
	 			x++;
	 			a[x][y]='o';
	 		}
	 		else if(a[x+1][y]=='$')
	 		{ 
 	 		   goto out;
	 	    } 
	 	    else if(a[x+1][y]=='?')
	 	    {
	 	    	a[x][y]=' ';
	 			x++;
	 			a[x][y]='O';
	 	    }
	 	}
	 	if(ch=='w')
	 	{
	 		if(a[x-1][y]==' ')
	 		{
	 			a[x][y]=' ';
	 			x--;
	 			a[x][y]='o';
	 		}
	 		else if(a[x-1][y]=='$')
	 		{ 
 	 		   goto out;
	 	    } 
	 	    else if(a[x-1][y]=='!')
	 		{ 
 	 		   a[3][7]='$';
 	 		   a[3][9]=' ';
 	 		   a[4][8]=' ';
 	 		   a[x][y]='0';
 	 		   a[1][5]=' ';
 	 		   a[1][7]='?';
	 	    } 
	 	     else if(a[x-1][y]=='?')
	 		{ 
 	 		   a[2][12]='?';
 	 		   a[1][5]='=';
 	 		   a[1][6]='>';
 	 		   a[3][2]='$';
 	 		   a[2][1]='$';
	 	    } 
	 	    
	 	}
	 	if(ch=='a')
	 	{
	 		if(a[x][y-1]==' ')
	 		{
	 			a[x][y]=' ';
	 			y--;
	 			a[x][y]='o';
	 		}
	 		else if(a[x][y-1]=='$')
	 		{ 
 	 		   goto out;
	 	    } 
	 	    else if(a[x][y-1]=='?')
	 		{ 
 	 		   a[1][9]='$';
 	 		   a[1][14]=' ';
 	 		   a[1][7]='$';
	 	    } 
	 	        else if(a[x][y-1]=='*')
	 		{ 
 	 		   a[2][12]='$';
	 	    } 
	 	}
	 	if(ch=='d')
	 	{
	 		if(a[x][y+1]==' ')
	 		{
	 			a[x][y]=' ';
	 			y++;
	 			a[x][y]='o';
	 		}
	 		else if(a[x][y+1]=='?')
	 		{ 
 	 		   a[2][1]='?';
 	 		   a[2][10]='?';
	 	    } 
	 	    	else if(a[x][y+1]=='!')
	 		{ 
 	 		  a[4][8]='!';
 	 		  a[1][5]=' ';
 	 		  a[x][y+1]=' ';
 	 		  
	 	    } 
	 	    	else if(a[x][y+1]=='*')
	 		{ 
 	 		   a[4][13]=' ';
	 	    } 
	 	    else if(a[x][y+1]=='$')
	 		{ 
 	 		   goto out;
	 	    } 
	 	
	 	}
	 	system("cls");
	 	for(i=0;i<=6;i++)
	 	   puts(a[i]);
	 	   if(x==5&&y==14)
	 	    break;
	 }

	
     printf("\n   哎呦 不错哦   ┗(?ω?;)┛] \n") ;
     Sleep(10000);
     return 0;
     
	 out:
	 	printf("\n    输了呀  ε(┬┬﹏┬┬)3 \n "); 
	 	 Sleep(10000);

	 	

	 return 0;
	 getchar();
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值