A 分析阶段
01 课程目标
今天我们做一个弹球游戏,小球在屏幕内跳动,我们控制一个小挡板,避免球落到底边。每接到球一次,得分加1,挑战看看你能得多少分吧。
02 按角色分析
小球: 在屏幕内不停运动,碰到边缘后反弹。
玩家挡板:竖直方向不动,水平方向跟随鼠标移动,用来接球。
底边:画一个长方形底边,用来判定小球被漏接了。
03 难点分析
难点一:小球的运动
我们点击一下,移动10步,发现小球会移动一小段距离。怎么让小球不停的移动呢,在程序中我们一个循环的概念,在控制模块下,我们可以看到一个“重复执行”的积木,我们使用这个积木,然后把移动十步放在里面,就可以看到小球开始不断的运动了,但很快就卡到了边缘里?这个问题怎么解决呢,我们只要增加一个碰到边缘就反弹就可以了。
难点二:角度与随机数
- 目前为止,我们的小球只能左右来回运动,下面我们试着给小球一个角度,面向45度,观察小球的运动。
- 角度总是固定的看起来很单调,下一步用运算里的随机数,给小球一个随机的角度看看效果。
难点三:玩家的控制
这里大家只要记住,左右是x,上下是y。那么我们要改的自然是x啦,重复执行让x为 鼠标的x就可以了
难点四:碰到玩家挡板反弹
程序的另一个结构就是分支结构,可以理解成在一定条件下会发生某些特定的事。Scratch中使用控制中的,如果...那么代码块。结合侦测中的碰到玩家挡板就可以了。碰撞后,我们要做三个事情:
- 增加得分:在变量中新建一个名字为得分的变量。
- 播放音效:在声音中选择喜欢的,合适的声音。
- 修改面向方向为向上:同难点二角度控制,此处要向上。
02 实践阶段
01 玩家挡板
弄清楚x和y的概念,区分设为和增加两个积木的区别。代码很少,知识点很多。
02 小球制作
小球要按顺序制作
- 第一步:让小球在屏幕上自由运动。
- 第二步:添加碰到玩家挡板后的代码,能够被挡板接住。
-
第三步:碰到底边后,停止全部脚本。