本编程任务内容请参见之前发布的

编程大作战——“冬天来了,雪花飞舞”

一、任务描述

  冬天来了,只见雪花纷纷扬扬地从空中飘下来。雪花落在小树上,小树好像穿上雪白的新衣。雪花落在屋顶上,屋顶好像戴上了雪白的帽子。雪花落在大地上,大地好像盖上了雪白的羊毛毯。要求用动画实现下雪的场景。

二、任务目的

  1、让大家能够结合我们身边的事物来进行创作,巩固学习编程知识。

  2、scratch中克隆体个数是有限的,不能无限制的克隆

  3、学习私有变量的创建以及结合克隆体的使用。

  4、面对某些不好实现的效果我们需要通过转换思维的办法来解决问题。

三、任务分析

  1、初级挑战:只需要会使用克隆与随机数即可。在scratch中“克隆”与“当作为克隆体启动时”经常是配合使用,我们通过重复执行,来不断的克隆雪花。在每个克隆体启动时我们设置一下克隆体的大小和位置,然后再通过重复执行,改变克隆体的y坐标就实现了雪花下落效果。

编程大作战任务解说:“冬天来了,雪花飞舞”

编程大作战任务解说:“冬天来了,雪花飞舞”

  2、中级挑战:要求雪花能够落在屋顶、车、路面。这里只要在雪花下落的过程中增加一个侦测的判断条件,只要克隆体碰到车或房子或者路面(路面用颜色来判断),就停止克隆体移动。

在scratch中克隆体的个数是有限的,你慢慢会发现,雪花会变得越来越少,为了不让雪停下来,我们使用“图章”把克隆的雪花留在舞台上,然后删除克隆体,这样就不会因为克隆体达到上限而停止了。下载地址:http://www.kidscode.cn/product/5347【请使用电脑下载】

编程大作战任务解说:“冬天来了,雪花飞舞”

  3、高级挑战:由于克隆体落在汽车和房子上面便停止移动,所以在这两个角色下面的路面就没有雪花留下,怎么解决这个问题也是本次挑战的重点。

  方法1:雪花下落过程中遇到汽车、房子不停止移动,而是巧妙的用图章留下一个雪花的图案,当雪花落到地面再次使用图章,这样就巧妙的解决了这个问题。(作者:azhong0817 )

编程大作战任务解说:“冬天来了,雪花飞舞”

  方法2:选中雪花角色,新建变量status(名字随意)如下图所示,一定是选中仅适用于当前角色。

编程大作战任务解说:“冬天来了,雪花飞舞”

  这样就创建了一个私有变量,这样每个克隆体都会拥有一个属于自己的变量,因此在克隆体启动时我们给这个变量随机设置值(1或者2),让值为1的雪花碰到房子或者汽车留在屋顶或者汽车上,值为2的将会落到地面,下载地址:http://www.kidscode.cn/product/5358【请使用电脑下载】

编程大作战任务解说:“冬天来了,雪花飞舞”

  【如果大家了解了私有变量的使用,在以后的创作中会很有用,比如大家想在设计游戏时想给每个克隆体设置一个血量的变化等】

四、优秀挑战作品

  作者:azhong0817,作品下载地址:http://www.kidscode.cn/product/5263【请使用电脑下载】

五、小结

  这个题目练习了克隆体、侦测模块、随机数以及变量的使用,重要的是面对困难如何转换思维,用其它自己已经掌握的知识来变相的解决问题。

  知识重点:私有变量的定义及使用。