这节课,我们要完成的是迷宫游戏,这里我们从游戏设计角度出发,游戏重点是处理游戏中角色和迷宫墙壁的碰撞问题,保证角色能够在迷宫中正常的移动。
首先了解下我们的游戏素材:
我们的小狗要去寻找蛋糕操作提示:在游戏中,玩家控制角色的上、下、左、右移动,帮助角色一次次找到通往重点的路径,这就需要玩家不断的提升自己的经验和逻辑思维能力才能完成挑战,游戏中的角色只能在迷宫路径上移动,不能穿过墙壁这种规律在游戏中如何实现呢?
<1>选择角色“终点”。给角色添加如下程序脚本,这段程序的功能是当程序开始运行,将角色“终点”的大小设置为一个合理的大小,将角色移动到我们想要的位置。
<3>接下来给“迷宫”添加第二段程序脚本(如下图)。这段程序的功能是将“迷宫”接收到广播的消息“下一关”时,角色“迷宫”切换到下一个造型,这样玩家完成了第一关后,游戏就会进行到下一关。
<4>角色迷宫的完整程序如下
<5>选择“小狗”,小狗在游戏中的作用是能够在迷宫中走来走去(上、下、左、右),当小狗碰到迷宫中的墙壁时需要停下来并且不能穿过墙壁,当小狗吃到“蛋糕”后,就会进入下一关。
同样,我们要对“小狗”进行一些设置,比如大小、位置
当玩家按下右移键时,“小狗”要面向90度方向向右侧移动,移动的过程中通过切换造型来让小狗有一个走动的过程
因为小狗每次移动3步,所以当小狗碰到迷宫墙壁时,就会穿过墙壁,我们需让小狗往回退3步才能避免它卡在墙壁中间。
想一想,我们在这里所说的墙壁是不是就是判断小狗有没有碰到墙壁的颜色呢?
- 要让小狗能够侦测到自己是不是碰到了墙壁的颜色,我们可以这样设置来选取墙壁的颜色。
-
将这几步组合起来,就能让小狗向右移动,碰到墙壁后会停止移动,如下图:
按照上面的方法,通过如下程序脚本来处理左移动脚本:
因为左移和右移是相反的方向,所以我们在修改程序时只需进行相反操作即可。
这样我们就可以推出上移、下移的操作:
那么当小狗吃到蛋糕时,可能会很高兴然后告诉我们,“我赢啦!”然后又移动到起点位置,进行下一关呢?
玩家在游戏中会经常按下方向键,最后走出迷宫,所以我们要重复执行移动和侦测工作(侦测碰到墙壁和是否迟到蛋糕),所以这是一个“重复执行”积木可以完成这个操作。
<6>最后,选择我们的舞台,给舞台添加两段程序让切换舞台的时候看起来有所区别。
最后,保存我们的程序,我们就可以开始玩耍啦!!!