键盘钢琴 ( 音符动画 )
这篇文章会介绍,如何在 Scratch 里使用扩充功能的音乐、按下键盘、重复无限次...等积木,实作键盘演奏钢琴的效果,并在弹奏时,产生音符往上飘动的动画效果。
角色设定
在角色编辑区,使用绘画,绘制一个的新角色 ( 参考:造型与绘图 )。
使用文字工具,输入音符的图案。
音符图案可以从这个网页点选复制:特殊符号 - 音符
为这个音符角色,新增四个造型,每个造型都是不同的音符图案。
将舞台新增一张背景图片,完成后应该就能在舞台上看到音符和背景。
积木程序原理
一开始先透过“尺寸”、“图像效果 - 亮度”、“图像效果 - 幻影”和“定位”积木,将黑色的音符,以指定的大小放在舞台的中间正下方 ( 亮度的作用在于将黑色调量变白色,幻影的作用在于待会要让音符慢慢消失 )。
使用“重复无限次”、“如果...那么”和“...键被按下”的积木,侦测键盘的 a、s、d、f、g 键被按下时,改变 x 的位置,并且使用扩充功能的“音乐”,分别演奏 60、62、64、65、67 的音阶。
点击绿旗,按下键盘按键,就能看到音符在舞台底部左右移动,同时也能从喇叭听到声音。
回到点击绿旗下方,放入“隐藏”积木,让隐藏音符角色本尊,接着在按下键盘的动作,加入建立音符“分身”的积木,并设定分身建立后,显示分身,以及随机出现 1~4 的造型。
点击绿旗,按下键盘按键,舞台下方就会出现随机造型的音符图案。
放入“重复 100 次”积木,每次重复将“图像效果 - 幻影”增加 1,音符就能够在重复 100 次之后变成全透明,每次重复也将音符的尺寸变大和位置向上移动,就能够做到逐渐往上移动,且越来越大、越来越透明。
点击绿旗,按下键盘按键,就会看见音符往上飘,且越来越大,越来越透明。
如果要做得更为细致,可以加入音符的水平的移动,下图使用“函数”搭配另外一个“当分身产生”的程序,在产生分身后,让音符的 x 改变做水平移动。
为什么要用函数而不用变数?因为如果使用变数,所有音符会共用同样的变数内容,造成水平移动都会是同样的距离,如果使用函数,就能让每个音符水平移动的距离有所不同。
完成效果
完成后,点击绿旗,按下键盘按键,就会看见音符往上飘的动画效果了。
范例解答
范例解答:键盘钢琴 ( 音符动画 )
延伸练习
如果已经熟悉了键盘钢琴 ( 音符动画 )的原理,还可以尝试更多好玩的作法:
使每次产生的音符都是不同颜色。( 解答 )
微信扫码关注
抖音扫码关注