【Scratch实例】小恐龙祝你生日快乐(part 1)

网友投稿 2018-07-16 11:00

前面的文章已经介绍Scratch了角色的增删改,积木中的运动、外观、声音等,需要了解的知识和技能还有很多,不过,我们需要停下来夯实已经学习过的内容,然后才好从容的进行后续的学习。

从本文开始,我们将一起完成一个小小的程序,程序内容主要围绕已经学习过的内容,在不可避免使用未学的知识时,请大家跟着我依葫芦画瓢即可,无需深究以后自会学到。

00 软件需求说明

软件需求说明(Software requirements specification),也称软件需求说明书、软件需求规格说明、软件需求规格说明书,缩写是SRS。
软件需求说明是软件系统需求的规格化说明,是对将要开发系统的行为的说明。它包括功能性需求及非功能性需求,非功能性需求对设计和实现提出了限制,比如性能要求,质量标准,或者设计限制。

-- 维基百科

“软件需求说明”是计算机行业专业的术语,简单解释,就是在开工之前明确我们到底要制作个啥东西。

现在,我就是甲方了,请大家仔细理解下面的要求,帮我开发个软件吧~

  1. 需要能听到《祝你生日快乐》的歌曲

  2. 要有个蛋糕

  3. 要热闹点,舞蹈就行,最好是恐龙,我最喜欢恐龙了

好了,要求就这么多。你们可以开工了……什么?!嫌我的要求太简略!其他的你们自由发挥吧!!

01 添加角色

打开Scratch,出现默认的白色舞台和小猫角色。需求说明里只提到蛋糕和恐龙,所以,我们首先需要删除小猫角色,并且新增2个角色。

删除小猫:

点击小猫角色,点击鼠标右键,弹出的右键菜单中选择“删除”。

https://cdn.china-scratch.com/timg/180718/1100305316-0.jpg

添加蛋糕:

  1. 在新建角色的区域,点击从库中添加角色。

  2. 在角色库窗口中,找到物品分类,再找到你喜欢的蛋糕或者蜡烛,选中角色,然后点击确定按钮。

  3. 调整蛋糕在舞台上的位置。

  4. 按照你的喜好调整蛋糕大小。

https://cdn.china-scratch.com/timg/180718/110031CL-1.gif

添加恐龙:

和上面的步骤一样,添加恐龙。不同的是,恐龙在角色库的动物分类里。

https://cdn.china-scratch.com/timg/180718/11003110a-2.gif

PS:复用小猫角色,将它改成蛋糕

为了增加练习,我们再补充另一种处理方式,不删除角色,而是在已有小猫角色上修改“造型”。(如果你已经记不清什么是角色什么是造型,请在公众号底部参看查看历史文章吧。)

具体操作步骤是这样的:

  1. 选中小猫

  2. 切换到它的造型tab

  3. 从造型库添加蛋糕造型。(这里有个重要的技巧,按住键盘上的Shift,选中多个造型,可以一次添加多个造型,避免了多次打开造型库逐个添加的繁琐。这个技巧也适用于添加角色、声音、背景。很重要!)

  4. 删除多于的小猫造型

https://cdn.china-scratch.com/timg/180718/110031O26-3.gif

这个操作显然要繁琐一些,不如之前的添加蛋糕角色方法快捷

02 蛋糕的烛光摇曳

蛋糕的烛光很少有静止不动的,而应该是随风摇曳。风向有一定的随机性,但是我们为了简单起见,就让烛光频率固定地“摇摆”吧。

看起来很难处理,其实换个思路就容易解决了,这个角色自带了2个造型,两个造型不停的切换就有了烛光摇曳的感觉

https://cdn.china-scratch.com/timg/180718/110031B39-4.jpg

实际操作如下,

https://cdn.china-scratch.com/timg/180718/1100314042-5.gif

这里用到了几个大家还不了解的积木,为了实现不停的切换造型、控制两次切换之间有短暂停顿、让脚步在点击小绿旗后运行等。这些按下不表,以后大家自会知晓。

03 添加生日歌曲

我们可以将生日快乐歌当做软件的背景音乐,所以在舞台上添加声音。为了歌曲不中断,使用循环积木讲台包裹。

从声音库添加音乐

https://cdn.china-scratch.com/timg/180718/1100326341-6.jpg

从声音库--循环音乐,添加祝你生日快乐,然后删除无用的默认声音。

音乐循环播放

https://cdn.china-scratch.com/timg/180718/1100322414-7.gif

播放音乐,并且让音乐循环播放

--end--

声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com