[Scratch] 基础 克隆体详解

克隆的是什么?

  • 克隆针对的是角色,也就是说克隆的是角色本身
  • 克隆出来的克隆体与角色本体的属性是相同的;
  • Scratch “克隆” 有三个积木,克隆克隆体启动删除克隆体,如下:
    image.png

克隆体和本体

  • 克隆后主体移动:一个苹果的角色,当使用 克隆自己 积木后,就会出现2个相同的苹果,此时如果紧跟在 克隆自己 后边,移动150步,那么此时移动的是 本体:
    image.png
  • 克隆后克隆体移动:克隆自己后,需要使用 当作为克隆体启动时 这个积木,该积木操作的是克隆体,如下:
    image.png

删除克隆体

  • 删除克隆体 这个积木针对的是克隆体,如下:克隆体启动移动后,删除克隆体:
    image.png

克隆体上限

  • 如果在克隆自己后不利用 “删除此克隆体” 积木将其删除,那么克隆体的个数是有上限的;
  • 上限个数是300个,达到上限后就不会在克隆新的克隆体了,所以在制作多个克隆体效果作品中,一定要在合适的时机 利用 “删除此克隆体” 积木将本克隆体删除,达到无限的创建多个克隆体的效果;

动态效果

  • 程序源代码以及动态效果演示在这篇文章中:

Scratch] 30 - 基础 克隆体理解

克隆体进一步理解

  • 进一步理解这句话:“克隆体被克隆后,克隆出来的克隆体与角色本体的具有相同的属性”。本体有什么属性,克隆体同样也拥有什么属性,且 各自私有,互相不影响
  • 比如:一个角色定义一个变量 a初始值=0, 当该角色克隆自己后,此时 克隆体和本体都具有a变量的属性,克隆体和本体可以分别对a变量赋值,比如:克隆体赋值 a=20, 本体赋值 a=10。此时对于a变量在克隆上体现是20, 在本体上体现则是10。学习过面向对象的人应该很好理解这一点(克隆体和本体可以理解为两个不同对象,在计算机中独占2个内存内存空间),如下图所示:


    image.png

实例

  • 下图仔细观察,变量a在舞台左上角显示的是本体的属性值;

    screenshots.gif

  • 上图程序说明如下:


    image.png
  • 以上使用到了克隆体启动积木操作克隆体,目的是区分克隆体和本体,视觉上看到二者的本质区别,但是大部分作品实际场景中并不需要明确的区分克隆体与本体的区别,所以接下不使用 克隆体启动积木,让克隆体与本体同步运动的方式实现一个 背景角色滚动 的效果, 代码如下:

    image.png

  • 以上程序代码动态视频效果以及源代码在这篇文章中:

Scratch] 36 - 基础 克隆体进一步理解

总结

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容