c语言推箱子代码
- 格式:docx
- 大小:9.82 KB
- 文档页数:21
#i n c l u d e<> #include <>
void map1();
void map2();
void map3();
void show();
void move();
void main(int argc,char*argv[])
{
time_t a,b;
time(&a);
system("color 1E");
loop1: {
system("cls");d秒\n\t\t\t ",b-a);
getch();d秒\n",q-p);
printf("\t\t\t\t*******回车重新选择*******\n\t\t\t\t");
getch();
}
else
{
time(&o);
if(z=='d')
{
return;
}
if(o-p>30)
{
loop1: system("cls");d秒\n",q-p);
printf("\t\t\t\t*******回车重新选择*******\n\t\t\t\t");
getch();
}
else
{
time(&o);
{
return;
}
if(o-p>30)
{
loop1: system("cls");d秒\n",q-p);
printf("\t\t\t\t*******回车重新选择*******\n\t\t\t\t");
getch();
}
else
{
time(&o);
if(z=='d')
{
return;
}
{
loop1: system("cls"); if(*t=='d'){}//遇到d返回
if(*t==75)//左键
{
if(c[*x][*y-1]=='#'||c[*x][*y-1]==5&&c[*x][*y-2]==5
||c[*x][*y-1]==5&&c[*x][*y-2]=='!'){}//遇到墙或推两个箱子else
{
if(c[*x][*y-1]=='!')//把箱子推出目的地
{
if(c[*x][*y-2]!=0){}
else
{
c[*x][*y]=0;
*y-=1;
c[*x][*y]=1;
c[*x][*y-1]=5;
}
}
else
{
if(c[*x][*y-1]==5&&c[*x][*y-2]!='#')//推箱子
{
if(c[*x][*y]==c[X][Y]||c[*x][*y]==c[A][B] ||c[*x][*y]==c[N][M]) //推着箱子离开目的地 {
c[*x][*y]=3;
*y-=1;
c[*x][*y]=1;
c[*x][*y-1]=5;
}
else
{
c[*x][*y]=0;
*y-=1;
c[*x][*y]=1;
c[*x][*y-1]=5;
}
}
else
{
if(c[*x][*y-1]==5&&c[*x][*y-2]=='#'){}//推不动箱子 else
{
if(c[*x][*y-1]==c[X][Y]||c[*x][*y-1]==c[A][B] ||c[*x][*y-1]==c[N][M])//进到目的地
{
c[*x][*y]=0;
*y-=1;
c[*x][*y]=1;
}
else
{
if(c[*x][*y]==c[X][Y]||c[*x][*y]==c[A][B] ||c[*x][*y]==c[N][M]) //离开目的地
{
c[*x][*y]=3;
*y-=1;
c[*x][*y]=1;
}
else //走到空地
{
c[*x][*y]=0;
*y-=1;
c[*x][*y]=1;
}
}
}
}
}
}
if(c[X][Y]==5||c[A][B]==5||c[N][M]==5)//箱子推到目的地 {
c[*x][*y-1]='!';
}
}
if(*t==77)//右键
{
if(c[*x][*y+1]=='#'||c[*x][*y+1]==5&&c[*x][*y+2]==5
||c[*x][*y+1]==5&&c[*x][*y+2]=='!'){}//遇到墙或推两个箱子else
{
if(c[*x][*y+1]=='!')//把箱子推出目的地
{
if(c[*x][*y+2]!=0){}
else
{
c[*x][*y]=0;
*y+=1;
c[*x][*y]=1;
c[*x][*y+1]=5;
}
}
else
{
if(c[*x][*y+1]==5&&c[*x][*y+2]!='#')//推箱子
{
if(c[*x][*y]==c[X][Y]||c[*x][*y]==c[A][B] ||c[*x][*y]==c[N][M]) //推着箱子离开目的地 {
c[*x][*y]=3;