魔塔设置隐藏机关怎么在scratch是隐藏的功能实现

 顺序结构的代码在执行过程Φ,都不会刷新舞台只有在执行完最后一块积木后,才会进行刷新;而循环结构的代码每一轮循环都会刷新一次舞台,如循环结构中角色的旋转效果每执行完一次右转的代码,当轮循环结束舞台刷新一次,如此我们就会看到角色旋转的过程了循环结构不能单独存茬,循环结构中必然包含顺序结构所以本质还是顺序结构执行完后对舞台进行刷新。

在《浅谈scratch是隐藏的功能的舞台刷新机制 Part 1——自制積木的不刷新屏幕功能》一文中介绍了“运行时不刷新屏幕”功能的原理及其应用;在《浅谈scratch是隐藏的功能的舞台刷新机制 Part 2——在常规積木中的应用》介绍了顺序结构的代码和循环结构代码对于舞台刷新的处理,以及scratch是隐藏的功能中阻塞状态的本质本文将会介绍scratch是隐藏嘚功能中隐藏对象的舞台刷新方式与加速模式。


通过之前两篇文章对于在不同情况下舞台的刷新机制都已经有了一定的了解。但是还有┅种情况我们尚未讨论舞台刷新的目的是为了让用户观察到程序运行的效果及其过程,试想一下如果一个角色本身就是看不见的,那舞台还需要去大费周章地刷新吗先来看一个实例

可见的角色在缓慢移动的过程中先隐藏再显示

角色在显示状态下,执行循环结构中的移動代码时不断刷新屏幕,因此可以看到角色移动的过程且移动速度较缓慢。角色切换至隐藏状态后同样的代码瞬间就执行完毕,造荿瞬移、闪现的效果结合《浅谈scratch是隐藏的功能的舞台刷新机制 Part 2——在常规积木中的应用》中关于舞台重绘需要消耗时间的说法,可以推測角色之所以闪现、代码之所以执行效率如此之高,是因为免去了舞台刷新的步骤也就是说,隐藏的角色是不会刷新舞台的


这个特性的发现具体有什么用呢?可以加快局部对象的程序执行效率使用起来比“运行时不刷新屏幕”功能更方便一些,且不局限于角色以

地震卷轴去找商人买在有9个黄門的地方打开第一行的中间那个门,第二行的第三个门就可拿到飞行器。

你对这个回答的评价是

隐藏的钥匙,在30多层有好几个黄门,黄门里有好多怪物有“让一层所有黄门都打开”的道具把怪物打完,就出来了

你对这个回答的评价是

参考资料

 

随机推荐