陈新龙
我们用Scratch模拟海浪,让小球在海浪中随波逐流。我们还可以调整海浪的强度。
把背景涂成黄色代表天空,红色的小球角色代表小船,绘制矩形角色代表海洋。海洋可以用渐变效果,从浅蓝到深蓝(如图1)。
在绘制完海洋后,我们需要在海洋上方绘制一条无形的线,填充和轮廓都选择无。这条线有什么作用呢?带着这个问题往下看吧(如图2)。
下面我们用外观中的特效工具“漩涡”让风平浪静的海面变成波涛汹涌的海面。海浪是由风等外力产生,设置一个变量“风级”代表风力大小,初始设为6级,你可以根据运行效果自行修改,级别越大,海洋也就越大。
接下来让海面形成波浪效果,漩涡特效是以对象角色的图形中心为圆点对整个图形做扭曲,如果没有我们在矩形上方绘制的隐形线条让海浪角色的中心在海浪的上方,漩涡特效就无法画出我们预想的波浪效果了。所以这根线要选在海面与舞台中心对称的天空中。
这里只需添加重复执行语句,让漩涡特效的数值不断循环变化就可以达到效果了(如图3)。
小球部分的代碼比较简单,让它随着波涛来回碰撞反弹,这里用自制积木“碰撞”,遇到或离开海浪的颜色就改变v坐标,把小球放在海面位置,点击绿旗后重复执行(如图4)。
编写完成后点击绿旗运行,看看小球是不是在海面上运动了。当然也可以把小球换成大轮船,这样会更加逼真一些。