Scratch3.0创意编程(基础篇):第11课 智能小车

前言

本节课程序逻辑清晰,重点是让学生了解角色之间的层级关系,并且学习通过积木指令调整层级关系。同时本节课归纳了角色不显示时的常见几种情况,并总结了解决方法。

课程目标

1、学习角色之间的层级关系。
2、学习通过侦测模块检测角色之间的距离。
3、学习角色不显示时常见的解决方法。

程序效果

程序分析

汽车角色从舞台区的左侧移动到右侧,在移动过程中与小汽车距离过近时停止移动。这种有条件的移动可以使用“重复执行直到…”积木块完成,利用侦测模块“到…的距离”检测两个角色之间的距离,作为判断小车停止的条件。
在这里插入图片描述
小男孩角色在移动过程中与小汽车距离过近时改变方向移动并加速行走。

编程知识

Step1 导入背景,角色
背景库导入背景“Urban”,角色库选择角色“jaime”以及素材文件夹“小汽车”。
Scratch3.0创意编程(基础篇):第11课 智能小车_第1张图片
Step2 角色编程
1、汽车角色。汽车初始化后,重复执行直到两个之间的距离小于100时停止移动。
Scratch3.0创意编程(基础篇):第11课 智能小车_第2张图片
2、男孩角色。小男孩的移动分为两个阶段,第一阶段是在遇到小汽车之前,缓慢的移动并做行走的动作。
Scratch3.0创意编程(基础篇):第11课 智能小车_第3张图片
第二阶段是遇到汽车之后改变方向向马路的方向移动,碰到舞台区边缘时反弹。
Scratch3.0创意编程(基础篇):第11课 智能小车_第4张图片
第二阶段编程完成后我们发现一个问题,小男孩从汽车的下面移动,这显然不是我们要的程序效果,为什么会出现这个问题?应该如何解决呢?

这是因为角色之间存在层级关系,层级关系影响角色在舞台区的遮盖顺序,它决定了角色在重叠区域优先显示哪个角色。
Scratch3.0创意编程(基础篇):第11课 智能小车_第5张图片
Scratch3.0创意编程(基础篇):第11课 智能小车_第6张图片
了解层级关系之后,我们如果想让小男孩在汽车上方走过,可以把小男孩作为最上层的角色或者把小汽车后移一层。外观模块提供了两个积木块用来针对当先角色调整层级,可以将角色上移或下移指定层数。
Scratch3.0创意编程(基础篇):第11课 智能小车_第7张图片
Scratch3.0创意编程(基础篇):第11课 智能小车_第8张图片

小男孩脚本。
Scratch3.0创意编程(基础篇):第11课 智能小车_第9张图片

课后总结

程序中有时会遇到角色不见的情况,这时要从三个方面检查:
1、检查角色是否可见,有没有被隐藏。
2、检查角色之间的层级关系,看是否是被其他角色遮挡,调整层级关系。
3、检查角色的坐标,看一看角色的坐标是否超出了舞台区的坐标范围。

欢迎大家多多提建议~~

你可能感兴趣的:(Scratch创意编程)