少⼉编程Scratch第三讲:宇宙⼤战.战游戏
⽬的:设置⼀艘宇宙飞船或其他⾓⾊,实现上下左右移动。每按⼀次空格键即发射⼀枚炮弹,同时播放声⾳,炮弹往屏幕上⽅飞,直到飞出屏幕。
实现⽅式
第⼀步:宇宙飞船⾓⾊的上下左右移动。
我们在接球运动中已经学过了。只需要不停循环,检测是否有按键按下。如果左箭头按下,X轴就减少10;如果右箭头按下,X轴就增加10;如果上箭头按下,Y轴就增加10;如果下箭头按下,Y轴就减少10。
第⼆步:使⽤发射炮弹的功能。
⾸先要到⼀个炮弹的图,可以选择球类或者其他物品, 最后我们选择了⼀个闪电,但要将闪电转⼀下,让尖尖的头朝上。
克隆⾓⾊功能解释:提供了⾓⾊的功能,这是⼀个强⼤的功能,就是出另外⼀个副本出来。启动时,可以执⾏单独的脚本,即相当于⼀个⼦函数,控制这个炮弹。每按⼀次按钮,炮弹就克隆复制⾃⼰。
然后炮弹往屏幕上放飞⾏就⽐较简单了,就是向上移动⼀定的位置,或者Y轴增加⼀定的距离。不停循环即可往上飞⾏。
逐步改进
制作程序的过程,是⼀个不断测试改进的过程。我们在制作过程中,发现了⼀些问题,并且逐步解决了。
1.    宇宙飞船的范围确定。 如果不设置范围,那么左右上下会移出屏幕。因此我们后来增加了⼀个判断,即只有在X轴⼤于-220时,才继续往左移动,否则就不往左移动了。Y轴类似。这样通过四个箭头的移动,保证宇宙飞船⼀直都不会超出屏幕,同时上⽅保留⼀定的空间。
2.    克隆体⼀直往上飞⾏,到顶部以后,会停留在那边,留下⼀个尾巴。我们增加了判断。如果碰到边缘,就“删除克隆体”,这样克隆体碰到边缘后就消失了。
3.    播放声⾳:每次发射后,系统会播放声⾳。播放声⾳不能直接在循环中做,因为那样会做完以后才能继续发射下⼀个炮弹,影响效果。因此⼴播⼀个消息,然后在消息中播放⾳乐。最后我们选择了⼀个敲打低⾳⿎的声⾳,这样发射以后,就发出类似爆炸的声⾳了。
制作步骤
第⼀步:飞船⾓⾊上下左右移动。
1.    加⼊宇宙飞船⾓⾊;选择星空背景。
2.    造型中,将飞船⼤⼩调⼩⼀点;设置飞船的中央点为中⼼。
3.    设置开始
4.    直接重复执⾏,⽆限循环
5.    加判断,然后使⽤侦测 “按键 左移键是否按下”,那么X增加-11。即飞船向左边移动。
6.    后来我们增加了⼀个判断。如果X⼤于-220,才将X坐标增加-11,否则就不增加。即到达左边框以后,飞船不会继续往左边移动,保持在屏幕范围内。
scratch在线编程7.    向右,向下和向上,⽅法类似。
游戏做出来后,⼩⼩朋友要来玩。结果她⼀直都按住箭头,飞船会超出屏幕。为了解决这个问题,我们就增加了边框的判断。
–飞船:上下左右移动–
说明:如果使⽤“当按下 X 键”作为移动语句时候,我们发现⾓⾊会显得⽐较卡顿,因⽽选择判断语句
第⼆步:克隆
8.    加⼊闪电⾓⾊。
9.    造型中,将闪电调⼩⼀点;设置飞船的中央点为中⼼。然后转动了⼀下。
10.  设置开始
11.  直接重复执⾏,⽆限循环
12.  每个循环,都将⼦弹 “移动”到“飞船”。因为飞船是移动的,所以发射时,要从飞船位置上发射出来。
13.  增加如果那么的判断,检测空格按键是否被按下。
14.  如果空格键被按下,那么就克隆⾃⼰。(这⾥可以克隆其他⾓⾊-例如飞船)。
15.  然后设置:控制>克隆体启动时。执⾏这个克隆体的脚本。
a.    ⾸先,外观>隐藏⾃⼰。 (开始的时候,我们是没有增加隐藏、显⽰的步骤的。这样就在飞船上⾯能够看见。)
b.    然后选择:运动>⾯向0°⽅向,即朝上。这⾥可以改变⽅向,例如向右发射等。(可以选择不同的⽅向,测试效果)
c.    然后外观>显⽰⾃⼰。
d.    重复执⾏;移动8步。即往上飞⾏。(可以改变移动的速度。)
e.    增加判断,如果碰到边缘,那么,删除克隆体。(如果不删除,就留⼀个尾巴在屏幕上⽅。)
16.  增加声⾳:
a.    克隆⾃⼰以后,⼴播消息1;
b.    当收到消息1时
1)演奏乐器设置为18-⿎
2)弹奏⿎声2, 长度为0.25节拍。(要使⽤⼴播,否则飞船发射就要等待声⾳播放,导致不连续。)
-:克隆⾃⼰、克隆后移动、⼴播播放声⾳。
说明:按照以上的⽅法闪电⽅向总是歪着横着的,不知道是不是版本问题,因⽽改进如下:
后续改进
1.    打算在上⽅随机出现另外⼀个⾓⾊,例如⿁怪,⿁怪也可以克隆⾃⼰。⿁怪按照随机的⽅向⾃上往下运动。(⾓⾊随机从上往下运动,在上⼀球类发射的课程中已经学过)。如果⿁怪碰到⼦弹,⿁
怪则消失,并且播放打中的⾳乐,最后播放⼀个爆炸的效果。
2.    增加计分器,每消灭⼀个⿁怪,就增加10分,这样可以进⾏游戏了。
浏览器中需要Flash播放器。
这个游戏,并不是由⼩孩独⾃完成。是在家长指导下,由⼩孩点击操作完成。⽬的依然是培养兴趣,了解逻辑过程,了解要实现什么功能,使⽤什么控件,对控件如何操作。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。