资源简介
推箱子.cpp,推箱子啊
代码片段和文件信息
#include
#include
#include
int map[7][10] = {
{0001111110}
{0111000010}
{1130411011}
{1334040051}
{1330404011}
{1111110010}
{0000011110} };//墙=1 空地=0 箱子=4 人=5 目的地=3
void DrawMap()
{
for (int i = 0;i < 7;i++)
{
for (int j = 0;j < 10;j++)
{
switch(map[i][j])
{
case 0:
printf(“ “);
break;
case 1:
printf(“■“);
break;
case 3:
printf(“☆“);
break;
case 4:
printf(“□“);
break;
case 5:
printf(“▲“);
break;
case 7: //4+3 箱子+目的地
printf(“★“);
break;
case 8: //5+3 人+目的地
printf(“●“);
break;
}
}
printf(“\n“);
}
}
void PlayGame()
{
int rowcol;
for (int i = 0; i < 7; i++)
{
for (int j = 0; j < 10;j++)
{
if (map[i][j] == 5 || map[i][j] == 8 )
{
row = i;
col = j;
}
}
}
//通过键盘控制
char input;
input=getch();
switch (input)
{
case ‘w‘:
if(map[row][col]==8)
{
if(map[row-1][col]!=1)
{
if(map[row-1][col]==0)
{
map[row-1][col]=5;
map[row][col]=3;
}
else if(map[row-1][col]==4&&map[row-2][col]==0)
{
map[row][col]=3;
map[row-1][col]=5;
map[row-2][col]=4;
}
else if(map[row-1][col]==4&&map[row-2][col]==3)
{
map[row][col]=3;
map[row-1][col]=5;
map[row-2][col]=7;
}
else if(map[row-1][col]==3)
{
map[row-1][col]=8;
map[row][col]=3;
}
else if(map[row-1][col]==7&&map[row-2][col]==0)
{
map[row-2][col]=4;
map[row][col]=3;
map[row-1][col]=5;
}
else if(map[row-1][col]==7&&map[row-2][col]==3)
{
map[row-2][col]=7;
map[row][col]=3;
map[row-1][col]=8;
}
}
}
else if(map[row-1][col]==0)
{
map[row][col]=0;
map[row-1][col]=5;
}
else if(map[row-1][col]==3)
{
map[row][col]=0;
map[row-1][col]=8;
}
else if(map[row-1][col]==7&&map[row-2][col]==3)
{
map[row-2][col]=7;
map[row][col]=0;
map[row-1][col]=8;
}
else if(map[row-1][col]==4)
{
if(map[row-2][col]==3)
{
map[row-2][col]=7;
map[row-1][col]=5;
map[row][col]=0;
}
else if(map[row-2][col]==0)
{
map[row-2][col]=4;
map[row-1][col]=5;
map[row][col]=0;
}
}
break;
case ‘a‘:
if(map[row][col]==8)
{
if(map[row][col-1]==0)
{
map[row-1][col]=5;
map[row][col]=3;
}
else if(map[row][col-1]==4&&map[row][col-2]==0)
{
map[row][col]=3;
map[row][col-1]=5;
map[row][col-2]=4;
}
else if(map[row][col+-1]==4&&map[row][col-2]==3)
{
map[row][col]=3;
map[row][col-1]=5;
map[row][col-2]=7;
}
else if(map[row][col-1]=
评论
共有 条评论