推箱子小游戏
推箱子15关

推箱子15关关卡1:入门•简单的方块布局,玩家只需将箱子推到目标点即可过关。
•操作指南:–使用方向键控制玩家移动。
–玩家只能推动一个箱子,不能同时推动多个箱子。
–箱子只能被推,不能被拉。
关卡2:交错•关卡中箱子与目标点会交错布局,玩家需要仔细思考如何推动箱子。
•操作指南:–尝试将箱子推到最外侧目标点上,再逐渐推动至内侧目标点。
关卡3:通道•关卡中存在狭窄的通道,限制了箱子的移动路径。
•操作指南:–注意避开通道入口和出口,确保箱子能顺利推入目标点。
关卡4:陷阱•关卡中散布了一些陷阱,箱子推入陷阱后无法再被推出,需要重新开始关卡。
•操作指南:–谨慎选择箱子的移动路径,避免将箱子推入陷阱。
关卡5:按钮•关卡中出现了按钮,玩家需要推动箱子到按钮上进行触发。
•操作指南:–将箱子推到按钮上,按钮将被激活,开启某道路使得玩家可以继续向前推箱。
关卡6:加权•关卡中箱子或目标点被加权,需要由多个玩家共同推动。
•操作指南:–分配不同方向的推箱子任务,确保每个加权目标点上都有箱子。
关卡7:推开•关卡中,玩家需要将箱子推向某个目标点,但该目标点不能直接到达,需要先推开某些箱子才能通行。
•操作指南:–注意箱子的推动顺序,确保箱子能按照预想的路径被推开。
关卡8:重叠•关卡中箱子和目标点被重叠放置,需要灵活操作才能将箱子推至目标点。
•操作指南:–先将外层的箱子推到旁边,再依次推动内层的箱子到达目标点。
关卡9:迷宫•关卡中设置了一些障碍物,玩家需要巧妙地绕过障碍物推动箱子。
•操作指南:–观察迷宫地图,规划好箱子的推动路径。
–可以试探性地进行移动,一步步找到正确的推动方案。
关卡10:移动目标点•关卡中目标点可以移动,需要随时调整推动策略。
•操作指南:–将箱子推向目标点前,先确保该目标点已经移动到正确位置。
关卡11:变形箱子•关卡中玩家需要将特殊形状的箱子推向对应形状的目标点。
•操作指南:–观察箱子和目标点的形状,找到对应的匹配关系。
推箱子第六关攻略

推箱子第六关攻略欢迎来到推箱子游戏的第六关!这一关可是相当有难度的,但是不用担心,本攻略将为您提供一些有效的解决方法和技巧。
让我们一起来解开这道推箱子之谜吧!关卡概览首先,让我们了解一下第六关的概况。
这一关的场景是一个迷宫,由墙壁、目标点、推箱子的人物和箱子组成。
目标是将所有的箱子推到目标点上。
但要注意,箱子只能朝一个方向移动,并且无法移动到墙壁或其他箱子上。
而且,如果箱子被困住,你将无法移动它。
因此,需要巧妙利用场景中的空间和箱子的位置来解决这一难题。
解决方案以下是一种可能的解决方案,供参考:1.分析地图:首先,观察地图,了解墙壁、目标点和箱子的位置。
这将帮助你计划你的移动策略。
需要注意的是,任何一个错误的移动可能导致你无法完成任务,所以在行动之前要慎重考虑。
2.安排步骤:根据地图的分析,确定一个合理的步骤序列。
一般来说,先解决容易推动的箱子,然后再处理难推动的箱子。
这样有助于减少错误的机会。
3.推动箱子:根据你的步骤序列,开始推动箱子。
请记住以下规则:–箱子只能朝一个方向移动,不能移动到其他的箱子或墙壁上。
–如果箱子被困住变成了不可推动状态,重新考虑之前的步骤序列。
可能需要重新安排步骤来解决问题。
4.目标完成:当所有的箱子都被正确推到目标点上时,恭喜你!你已经成功解开了这个谜题。
技巧与注意事项除了以上的基本解决方案,以下是一些推箱子游戏中的技巧和注意事项,可以帮助你更有效地解决第六关的挑战:•记录你的步骤:如果你没有很好地记住之前的移动步骤,可能会导致混乱和错误的移动。
因此,将你的移动步骤记录下来是非常有用的。
•观察箱子的位置:在推动箱子之前,请确保你已经观察了箱子的整体位置。
这将帮助你制定策略,并避免将箱子困在墙壁或其他箱子中。
•重置:如果你发现之前的步骤序列有问题导致无法完成关卡,可以尝试重新开始这一关卡。
这样可以为你提供一个新的机会来制订更好的策略。
•尝试不同的方案:如果你发现自己陷入了困境,无法找到正确的步骤序列,请尝试不同的方案和顺序。
课程设计推箱子

课程设计推箱子一、教学目标本课程的教学目标是使学生掌握推箱子游戏的规则和技巧,能够独立完成各种难度的推箱子游戏。
具体分解为以下三个目标:1.知识目标:使学生了解和掌握推箱子游戏的基本规则和技巧,包括如何推动箱子、如何越过障碍物、如何利用场景中的其他物品等。
2.技能目标:通过练习,使学生能够熟练掌握推箱子游戏的操作技巧,提高游戏速度和成功率。
3.情感态度价值观目标:培养学生面对挑战、克服困难的精神,增强学生的自信心和自我成就感。
二、教学内容本课程的教学内容主要包括以下几个部分:1.推箱子游戏的基本规则和技巧:如何推动箱子、如何越过障碍物、如何利用场景中的其他物品等。
2.推箱子游戏的操作技巧:如何快速准确地操作游戏角色,提高游戏速度和成功率。
3.各种难度的推箱子游戏实例:通过练习,使学生能够熟练应对各种难度的游戏挑战。
三、教学方法本课程的教学方法主要包括以下几种:1.讲授法:教师讲解推箱子游戏的基本规则和技巧,学生听讲并理解。
2.案例分析法:教师展示各种难度的推箱子游戏实例,学生分析并掌握相应的操作技巧。
3.实验法:学生通过实际操作推箱子游戏,锻炼和提高自己的操作技巧。
四、教学资源本课程的教学资源主要包括以下几种:1.教材:推箱子游戏教程,内容包括游戏规则、技巧讲解和游戏实例。
2.多媒体资料:推箱子游戏视频教程,为学生提供直观的学习材料。
3.实验设备:计算机和推箱子游戏软件,为学生提供实际操作的平台。
五、教学评估本课程的评估方式主要包括以下几个方面:1.平时表现:评估学生在课堂上的参与程度、提问回答情况等,占总成绩的30%。
2.作业:评估学生完成作业的质量、速度和准确性,占总成绩的30%。
3.考试:期末进行一次推箱子游戏考试,评估学生的游戏操作技巧和掌握程度,占总成绩的40%。
评估方式应客观、公正,能够全面反映学生的学习成果。
教师应及时给予学生反馈,帮助学生提高。
六、教学安排本课程的教学安排如下:1.教学进度:共10节课,每节课45分钟。
推箱子小游戏

推箱子小游戏
推箱子是一款经典的益智小游戏,目标是将所有的箱子推到指定的位置上。
游
戏区域由方块组成,其中包含了墙壁、目标点、玩家和箱子。
游戏的规则很简单,玩家通过控制角色进行移动,将箱子推到目标点上。
玩家
只能推动箱子,而不能拉动箱子或者将箱子推到墙壁上。
玩家可以向上、向下、向左或向右移动,但是不能穿过墙壁。
玩家需要注意的是,箱子只能推动一格,也就是说,玩家需要站在箱子的旁边
才能推动它。
当箱子被推到目标点上时,目标点会变成一个已经完成的状态,
玩家需要将所有的箱子都推到目标点上才能完成游戏。
在游戏中,玩家需要考虑到箱子的位置和移动顺序。
如果箱子被推到一个角落里,可能会导致无法继续推动箱子,从而无法完成游戏。
因此,玩家需要合理
安排箱子的位置,以确保能够顺利推动箱子到目标点上。
此外,在游戏中还有一些技巧和术语可以帮助玩家更好地解决问题。
例如,玩
家可以利用墙壁来阻挡箱子的移动路径,从而更好地控制箱子的位置。
玩家还
可以利用一些特殊的移动序列来解决一些复杂的情况,例如“倒退”、“环绕”等。
推箱子是一款非常有趣和具有挑战性的游戏,玩家需要灵活运用自己的思维能
力和空间想象力来解决问题。
每一关都有不同的布局和难度,玩家需要不断尝
试和探索,才能找到最佳的解决方案。
通过不断的练习和思考,玩家可以提高
自己的推箱子技巧,挑战更高的关卡和更复杂的谜题。
希望你能尝试推箱子这款游戏,享受解决谜题的乐趣!。
推箱子小游戏

推箱子小游戏
推箱子是一种经典的益智游戏,目标是将所有的箱子推到指定的位置。
游戏的场景通常是一个由方块组成的迷宫,玩家需要通过移动角色来推动箱子。
游戏规则如下:
1. 游戏场景由方块组成,其中包括墙壁、目标位置、箱子和玩家角色。
2. 玩家可以通过上、下、左、右四个方向的移动来控制角色。
3. 玩家只能移动到空白的方块上,不能穿过墙壁或箱子。
4. 当玩家移动到一个箱子旁边时,可以选择将箱子推动到相邻的空白方块上。
5. 箱子只能被推动,不能被拉动或推到墙壁上。
6. 箱子被成功推到目标位置时,会变为一个已完成的箱子,玩家需要将所有的箱子都推到目标位置才能完成游戏。
玩家需要注意以下几点技巧:
1. 角色的移动要谨慎,一旦将箱子推到一个无法继续推动的位置,可能导致游戏无法完成。
2. 箱子之间可能会相互阻挡,需要找到正确的顺序和路径来推动箱子。
3. 角色可以利用墙壁和箱子来改变方向,有时需要巧妙地利用这些障碍物来解决难题。
4. 角色可以通过撤销上一步的操作来纠正错误,有时需要多次尝试才能找到正确的解决方法。
推箱子是一款需要思考和计划的游戏,玩家需要通过观察和分析来找到最佳的解决方案。
游戏具有多个关卡,每个关卡的难度会逐渐增加,玩家需要不断尝试和探索才能通关。
通过尝试不同的策略和方法,玩家可以提高自己的解题能
力,同时也能享受到解决难题的成就感。
总之,推箱子是一款富有挑战性和乐趣的益智游戏,通过移动角色和推动箱子来解决难题。
玩家需要运用逻辑思维和创造力,找到最佳的解决方案。
希望你能尝试并享受这款经典的游戏!。
推箱子经典版攻略

推箱子经典版攻略简介推箱子是一款经典而又耐玩的益智游戏,通过移动箱子,将箱子推到指定位置来完成关卡。
推箱子经典版是这款游戏的一个变种,它保留了原版的基本要素,同时增加了一些新的挑战和谜题。
本文将为你提供一份详细的推箱子经典版攻略,帮助你通关并解决难题。
游戏规则在推箱子经典版中,玩家扮演的角色是一个工人,目标是将所有的箱子推到指定位置上。
玩家通过键盘的上下左右键来控制工人的移动,工人可以推动箱子,但无法拉动箱子。
箱子只能水平或垂直移动,不能斜向移动。
玩家需要在移动箱子的过程中避免箱子被困在墙壁或者其他障碍物中,否则游戏将无法继续进行。
关卡攻略关卡1关卡1是一个入门级别的关卡,主要是为了让玩家熟悉游戏的基本操作和规则。
这一关只有一个箱子和一个目的地,任务比较简单。
玩家可以先移动工人,然后推动箱子到指定位置。
关卡2在关卡2中,玩家需要推动两个箱子到指定位置。
这个关卡增加了一些障碍物,需要玩家巧妙地利用墙壁和空间来推动箱子。
玩家可以先将一个箱子推到边缘,然后再推动另一个箱子。
需要注意的是避免箱子被困在墙壁中。
关卡3关卡3增加了更多的箱子和目的地,任务更加复杂。
玩家需要仔细思考每一步的移动,避免出现困局。
在推动箱子时,可以利用墙壁来改变方向,以达到更好的目的地。
关卡4在关卡4中,玩家需要解决更多的谜题。
这一关有一些特殊的地形,如冰面和传送门。
冰面会使得箱子和工人滑行一定的距离,而传送门可以将箱子和工人传送到另一个传送门上。
玩家可以利用这些特殊地形来解决难题。
关卡5关卡5是最后一个关卡,也是整个游戏的高潮。
这一关有多个箱子和目的地,需要玩家精确地控制每一步。
玩家可以利用墙壁和各种地形来推动箱子,解决各种难题。
这一关的通关条件相对较为严格,需要玩家在有限的步数内完成任务。
小技巧除了以上的关卡攻略外,下面还有一些推箱子经典版的小技巧可以帮助你更好地通关:1.观察周围环境:在每一关开始之前,先观察周围的箱子、墙壁和目标位置,思考最佳的推动策略。
推箱子小游戏

推箱子小游戏推箱子是一款经典的益智解谜游戏,目标是将所有的箱子推到指定的目标位置上。
游戏以方块地图为背景,玩家通过控制一个角色来推动箱子,达到目标位置即可过关。
游戏规则如下:1. 游戏地图由方块组成,其中包括墙壁、空地、目标位置和箱子。
2. 玩家通过键盘或触屏控制角色移动,角色只能在空地上移动。
3. 玩家可以向上、下、左、右四个方向移动,但只能推动箱子而不能拉动。
4. 箱子只能推动一格,不能推到墙壁或其他箱子上。
5. 箱子被推到目标位置上后,会变成一个已完成的箱子,玩家需要将所有的箱子都推到目标位置才能过关。
6. 玩家需要合理安排移动顺序和方向,避免将箱子推到无法推动或无法到达的位置。
术语和技巧:1. 箱子的移动顺序很重要,有时候需要先移动一个箱子,为另一个箱子腾出空间。
2. 角色可以走过已完成的箱子,但不能走过未完成的箱子。
3. 角色可以利用墙壁和已完成的箱子来改变方向或避免陷入死胡同。
4. 角色不能推动两个以上的箱子,所以需要注意箱子之间的位置关系。
5. 有些关卡可能存在多个目标位置,玩家需要合理安排推箱子的顺序,以最少的步数完成任务。
创造性和想象力:1. 玩家可以尝试不同的移动顺序和方向,以找到最佳的解决方案。
2. 在某些关卡中,玩家可以利用特殊的地形或道具来解决难题,如传送门、开关等。
3. 玩家可以尝试设计自己的关卡,并与其他玩家分享挑战。
通过以上的规则和技巧,玩家可以充分享受推箱子游戏的乐趣。
这款游戏不仅能锻炼逻辑思维和空间想象力,还能提升解决问题的能力。
无论是初学者还是老手,都可以通过不断尝试和探索,找到属于自己的解谜方法,挑战更高难度的关卡。
让我们开始推箱子的冒险吧!。
推箱子小游戏

推箱子小游戏
推箱子是一款益智游戏,目标是将所有的箱子推到指定位置,完成关卡。
游戏规则如下:
1. 游戏场景是一个方格地图,由墙壁、空地、箱子和目标点组成。
玩家可以在
空地上移动,但不能穿越墙壁。
2. 玩家通过点击或滑动屏幕来控制主角移动。
每次移动,主角可以向上、下、左、右四个方向移动一格,但不能停在墙壁上。
3. 箱子只能被推动,而且只能推动一格。
如果箱子被墙壁或其他箱子挡住,就
无法推动。
4. 目标点是一个特殊的地块,箱子需要被推到目标点上才算完成。
5. 当所有箱子都被推到目标点上时,玩家即可过关。
游戏术语和技巧:
1. 箱子的位置和目标点的位置是固定的,但墙壁和空地的布局每个关卡都不同,需要玩家灵活应对。
2. 玩家需要思考每一步的移动,避免将箱子推到无法移动的位置,导致无法完
成关卡。
3. 箱子可以被推到墙壁或其他箱子旁边,形成一种连锁反应,一次性推动多个
箱子,这是解决难题的关键技巧。
4. 有些关卡可能需要玩家推动箱子的顺序,以避免陷入僵局。
需要注意箱子的
位置和目标点的相对位置。
5. 有些关卡可能需要玩家运用一些特殊的技巧,比如利用墙壁或其他箱子的位
置来调整箱子的位置。
推箱子游戏提供了多个关卡,每个关卡的难度不同,需要玩家运用不同的策略和技巧来解决难题。
通过思考和尝试,玩家可以逐渐提高自己的解题能力,并享受到游戏带来的挑战和乐趣。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#include <stdio.h> //标准输入输出头文件#include <stdlib.h> //system函数的头文件#include <conio.h> //getch函数的头文件int i,j;void draw_map(int map[10][12]); //声明画图函数int main(){char input;int count=0; //定义记分变量/*下面定义一个二维数组,其中的元素是不同图像的ID号,在后面的函数中将讲解不同数字分别代表的图像元素*/int map[10][12] = {{2,2,2,2,2,1,1,1,1,1,2,2},{1,1,1,1,2,1,0,0,0,1,1,2},{1,0,0,1,1,1,0,1,0,0,1,2},{1,0,4,3,3,3,3,3,1,0,1,1},{1,0,0,1,1,3,3,3,4,0,0,1},{1,0,0,0,0,4,1,1,4,1,0,1},{1,0,4,1,4,0,0,0,4,0,0,1},{1,1,0,6,0,1,1,1,4,1,0,1},{2,1,1,1,1,1,2,1,0,0,0,1},{2,2,2,2,2,2,2,1,1,1,1,1}};while (1) //死循环,等待用户命令{system("CLS");draw_map(map);printf("当前得分:%d\n",count);//找初始位置for (i=0;i<10;i++){for (j=0;j<12;j++){if (map[i][j]==6||map[i][j]==9)break;}if (map[i][j]==6||map[i][j]==9)break;}printf("您的当前坐标(%d,%d)",i,j);input = getch(); //用getch()函数无需回车确认地获取用户输入,用于控制行走方向。
switch (input){case 'w'://如果人前面是空地。
if(map[i-1][j]==0){map[i-1][j]=6+0; //人往前走一步,ID为人的ID(6)加上空地的ID(0)。
if(map[i][j]==9) //如果当前人站的位置为目的地,则ID为9(即人的ID(6)加上目的地ID(3))。
map[i][j]=3; //将人往前走一步后原地的ID修改为空地ID(3)。
elsemap[i][j]=0; //否则原地ID修改为空地ID 。
}//如果人前面是目的地。
else if((map[i-1][j]==3)||(map[i-1][j]==9)){map[i-1][j]=6+3; //人往前走一步,ID为人ID+目的地ID=9。
if(map[i][j]==9) //如果原地也是目的地(ID为9)。
map[i][j]=3; //人走后把原地ID修改回目的地ID。
elsemap[i][j]=0; //否则原地ID修改为为空地ID}//如果人前面是箱子。
else if(map[i-1][j]==4){//如果人前面是箱子,而箱子前面是空地。
if (map[i-2][j]==0){map[i-2][j]=4; //人推箱子往前走一步,把空地ID修改为箱子ID(4)//下面是对箱子原地进行判断if(map[i-1][j]==7) //如果箱子原地为目的地。
map[i-1][j]=9; //人站在箱子的原地(目的地)时该地ID应该为人的ID+目的地ID=9。
elsemap[i-1][j]=6; //否则,人站在了原来的空地上,ID应该为6+0=6。
//下面是对人原地进行判断if(map[i][j]==9) //如果之前是目的地。
map[i][j]=3; //人走了之后修改回目的地ID。
elsemap[i][j]=0; //否则就是空地。
}//如果人的前面是箱子,而箱子前面是目的地。
else if (map[i-2][j]==3){map[i-2][j]=7; //ID为7(目的地ID(3)+箱子ID(4)=7),表示已经把箱子推入了目的地。
count++;//下面是对箱子原先位置的判断,同上。
if(map[i-1][j]==7)map[i-1][j]=9;elsemap[i-1][j]=6;//下面是对人原先位置进行判断,同上。
if(map[i][j]==9)map[i][j]=3;elsemap[i][j]=0;}}//如果人前面是已经进入某目的地的箱子(ID=7)。
else if(map[i-1][j]==7){//如果人前面是已经进入某目的地的箱子,而箱子前面是空地。
if(map[i-2][j]==0){count--;map[i-2][j]=4; //把箱子重新推到空地上,ID=箱子ID+空地ID=4。
map[i-1][j]=9; //人自然而然的就站在了原先的目的地上了。
//下面是对人原先地进行判断,方法同上。
if(map[i][j]==9)map[i][j]=3;elsemap[i][j]=0;}//如果人前面是已经进入某目的地的箱子,而箱子前面是另一目的地。
if(map[i-2][j]==3){map[i-2][j]=7; //把箱子推入了另一目的地,自然,ID也应是7。
map[i-1][j]=9; //人站在了目的地上。
//下面是对人原先站立地进行判断,方法同上。
if(map[i][j]==9)map[i][j]=3;elsemap[i][j]=0;}}break;case 's'://如果人前面是空地。
if(map[i+1][j]==0){map[i+1][j]=6+0; //人往前走一步,ID为人的ID(6)加上空地的ID(0)。
if(map[i][j]==9) //如果当前人站的位置为目的地,则ID为9(即人的ID(6)加上目的地ID(3))。
map[i][j]=3; //将人往前走一步后原地的ID修改为空地ID(3)。
elsemap[i][j]=0; //否则原地ID修改为空地ID 。
}//如果人前面是目的地。
else if(map[i+1][j]==3){map[i+1][j]=6+3; //人往前走一步,ID为人ID+目的地ID=9。
if(map[i][j]==9) //如果原地也是目的地(ID为9)。
map[i][j]=3; //人走后把原地ID修改回目的地ID。
elsemap[i][j]=0; //否则原地ID修改为为空地ID}//如果人前面是箱子。
else if(map[i+1][j]==4){//如果人前面是箱子,而箱子前面是空地。
if (map[i+2][j]==0){map[i+2][j]=4; //人推箱子往前走一步,把空地ID修改为箱子ID(4)//下面是对箱子原地进行判断if(map[i+1][j]==7) //如果箱子原地为目的地。
map[i+1][j]=9; //人站在箱子的原地(目的地)时该地ID应该为人的ID+目的地ID=9。
elsemap[i+1][j]=6; //否则,人站在了原来的空地上,ID应该为6+0=6。
//下面是对人原地进行判断if(map[i][j]==9) //如果之前是目的地。
map[i][j]=3; //人走了之后修改回目的地ID。
elsemap[i][j]=0; //否则就是空地。
}//如果人的前面是箱子,而箱子前面是目的地。
else if (map[i+2][j]==3){map[i-2][j]=7; //ID为7(目的地ID(3)+箱子ID(4)=7),表示已经把箱子推入了目的地。
count++;//下面是对箱子原先位置的判断,同上。
if(map[i+1][j]==7)map[i+1][j]=9;elsemap[i+1][j]=6;//下面是对人原先位置进行判断,同上。
if(map[i][j]==9)map[i][j]=3;elsemap[i][j]=0;}}//如果人前面是已经进入某目的地的箱子(ID=7)。
else if(map[i+1][j]==7){//如果人前面是已经进入某目的地的箱子,而箱子前面是空地。
if(map[i+2][j]==0){count--;map[i+2][j]=4; //把箱子重新推到空地上,ID=箱子ID+空地ID=4。
map[i+1][j]=9; //人自然而然的就站在了原先的目的地上了。
//下面是对人原先地进行判断,方法同上。
if(map[i][j]==9)map[i][j]=3;elsemap[i][j]=0;}//如果人前面是已经进入某目的地的箱子,而箱子前面是另一目的地。
if(map[i+2][j]==3){map[i+2][j]=7; //把箱子推入了另一目的地,自然,ID也应是7。
map[i+1][j]=9; //人站在了目的地上。
//下面是对人原先站立地进行判断,方法同上。
if(map[i][j]==9)map[i][j]=3;elsemap[i][j]=0;}}break;case 'a'://如果人前面是空地。
if(map[i][j-1]==0){map[i][j-1]=6+0; //人往前走一步,ID为人的ID(6)加上空地的ID(0)。
if(map[i][j]==9) //如果当前人站的位置为目的地,则ID为9(即人的ID(6)加上目的地ID(3))。
map[i][j]=3; //将人往前走一步后原地的ID修改为空地ID(3)。
map[i][j]=0; //否则原地ID修改为空地ID 。
}//如果人前面是目的地。
else if(map[i][j-1]==3){map[i][j-1]=6+3; //人往前走一步,ID为人ID+目的地ID=9。
if(map[i][j]==9) //如果原地也是目的地(ID为9)。
map[i][j]=3; //人走后把原地ID修改回目的地ID。
elsemap[i][j]=0; //否则原地ID修改为为空地ID}//如果人前面是箱子。
else if(map[i][j-1]==4){//如果人前面是箱子,而箱子前面是空地。
if (map[i][j-2]==0){map[i][j-2]=4; //人推箱子往前走一步,把空地ID修改为箱子ID(4)//下面是对箱子原地进行判断if(map[i][j-1]==7) //如果箱子原地为目的地。
map[i][j-1]=9; //人站在箱子的原地(目的地)时该地ID应该为人的ID+目的地ID=9。
elsemap[i][j-1]=6; //否则,人站在了原来的空地上,ID应该为6+0=6。