极客小将

您现在的位置是:首页 » scratch编程资讯

资讯内容

scratch重要脚本——在( )之前一直等待

极客小将2021-04-12-
很久没来了,忙于各种事务,新年后第一条推送,诚意满满。

很久没来了,忙于各种事务,新年后第一条推送,诚意满满。

upload/article/images/2021-04-12/b49815967f0bb09afa104a32fc0ccb68.jpg

有一定scratch编程基础的同学对这条脚本并不陌生,

直接翻译过来就是:

(1)在条件没有满足时,程序会一直等待;

其实,我们也可以这样翻译:

(2)在条件满足时,程序才会执行下一条脚本。

为什么我们需要两个翻译版本呢?

我们来看两个案例:

01

按下空格使角色旋转

程序设计如下图:

upload/article/images/2021-04-12/bc2c7f2eb4bb29f3bd811ff9c0c59fc2.jpg

阅读程序后,这是一个简单的按下空格——→逆时针旋转15°的程序。套用文章前面提到的第二个翻译版本,“按下空格”条件成立,执行旋转15°脚本

但是,我们发现,如果一直按着“空格”不松开,角色就会一直旋转。效果如下图:

upload/article/images/2021-04-12/10a24a2960f044e339ddeade4aeef7de.jpg

如果某些程序需要,当用户一直按住空格键不松开,只执行一次旋转15°脚本,该怎么办?


02

按下空格使角色旋转,并屏蔽一直旋转的情况

如果修改源程序,我们可以这样修改。如下图:

upload/article/images/2021-04-12/55c999d4965ab8a18d4ddc6646a9c734.jpg

在源程序添加一条脚本,如下图:

upload/article/images/2021-04-12/2cdc38214bae0fe9522546deabb89400.jpg

套用文章前面提到的第一个翻译版本,让菱形中的条件不满足。

由于是一直按着空格键,所以菱形中的条件是没有满足的。所以就能实现“屏蔽一直旋转”的效果。程序效果如下图:

upload/article/images/2021-04-12/18a61c20548ca7a79574f4420ffecb11.jpg

总结:以上问题,统称为“重复检测只执行一次”

通过upload/article/images/2021-04-12/0a73f0b42d2a1bea5c8666c65476c74e.jpgupload/article/images/2021-04-12/b49815967f0bb09afa104a32fc0ccb68.jpg脚本的组合一般可以实现类似的“重复检测只执行一次”的效果。

如果我们能学好基础脚本,并能深层次理解其中的原理,那对于之后进阶的学习是很有帮助的。

声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除

网友点评

共有5条评论来说两句吧...

在线客服