克隆的是什么?
- 克隆针对的是角色,也就是说克隆的是角色本身
- 克隆出来的克隆体与角色本体的属性是相同的;
- Scratch “克隆” 有三个积木,克隆、克隆体启动和删除克隆体,如下:
克隆体和本体
-
克隆后主体移动:一个苹果的角色,当使用 克隆自己 积木后,就会出现2个相同的苹果,此时如果紧跟在 克隆自己 后边,移动150步,那么此时移动的是 本体:
-
克隆后克隆体移动:当克隆自己后,需要使用 当作为克隆体启动时 这个积木,该积木操作的是克隆体,如下:
删除克隆体
-
删除克隆体 这个积木针对的是克隆体,如下:克隆体启动移动后,删除克隆体:
克隆体上限
- 如果在克隆自己后不利用 “删除此克隆体” 积木将其删除,那么克隆体的个数是有上限的;
- 上限个数是300个,达到上限后就不会在克隆新的克隆体了,所以在制作多个克隆体效果作品中,一定要在合适的时机 利用 “删除此克隆体” 积木将本克隆体删除,达到无限的创建多个克隆体的效果;
动态效果
- 程序源代码以及动态效果演示在这篇文章中:
Scratch] 30 - 基础 克隆体理解
克隆体进一步理解
- 进一步理解这句话:“克隆体被克隆后,克隆出来的克隆体与角色本体的具有相同的属性”。本体有什么属性,克隆体同样也拥有什么属性,且 各自私有,互相不影响。
-
比如:一个角色定义一个变量 a初始值=0, 当该角色克隆自己后,此时 克隆体和本体都具有a变量的属性,克隆体和本体可以分别对a变量赋值,比如:克隆体赋值 a=20, 本体赋值 a=10。此时对于a变量在克隆上体现是20, 在本体上体现则是10。学习过面向对象的人应该很好理解这一点(克隆体和本体可以理解为两个不同对象,在计算机中独占2个内存内存空间),如下图所示:
实例
-
下图仔细观察,变量a在舞台左上角显示的是本体的属性值;
-
上图程序说明如下:
-
以上使用到了克隆体启动积木操作克隆体,目的是区分克隆体和本体,视觉上看到二者的本质区别,但是大部分作品实际场景中并不需要明确的区分克隆体与本体的区别,所以接下不使用 克隆体启动积木,让克隆体与本体同步运动的方式实现一个 背景角色滚动 的效果, 代码如下:
以上程序代码动态视频效果以及源代码在这篇文章中:
Scratch] 36 - 基础 克隆体进一步理解
总结
- 克隆体在一些小游戏中经常用到,比如:一些节日庆典时候很多气球飞向天空 scratch实现作品-祝大朋友小朋友们六一儿童节快乐,一些对战类游戏 [Scratch]小游戏 克隆体综合练习《炮击敌机》下雨效果:克隆体实战 《下雨》, 希望小朋友们牢牢记住克隆体和本体的区别;
- 只有基础知识牢固,才能制作出更有创意的作品。