#szsc2c. 运动会接力赛

    ID: 9371 传统题 30000ms 512MiB 尝试: 0 已通过: 0 上传者: 标签>广播变量数据运算背景的操作编程题背景的操作·二星变量·三星广播·三星数据运算·三星scratch二级

运动会接力赛

学校运动会有一个两人接力赛:第一棒的同学从起跑线出发,跑到交接区把接力棒交给第二棒的同学,第二棒的同学接过棒才能起跑,一直冲到终点。小杨想把这场比赛做成动画,还要用一个变量记下两人一共跑了多少步。请用 Scratch 把它做出来。

舞台最终效果可以参考下图(角色造型允许略有不同,程序运行效果满足要求即可):

运动会接力赛舞台效果

准备工作

  1. 删除默认小猫角色,添加角色 Champ99 和 Avery Walking。
  2. 保留默认白色背景,添加背景 Playing Field。
  3. 新建一个变量“总步数”,建立时选择“适用于所有角色”。

功能要求

  1. 点击绿旗后,舞台切换成 Playing Field 背景。
  2. 点击绿旗后,Champ99 移到坐标(-180,-80),面向 90 度;Avery Walking 移到坐标(40,-80),面向 90 度,在交接区等候,暂时不动。
  3. Champ99 先把“总步数”设为 0,再跑第一棒:每隔 0.1 秒移动 20 步,同时把“总步数”增加 20,一共重复 9 次。
  4. Champ99 跑完第一棒后说“该你了”1 秒,然后广播消息“接棒”。
  5. Avery Walking 收到消息“接棒”后才开始动:先说“接棒啦”1 秒,再跑第二棒——每隔 0.1 秒移动 20 步,同时把“总步数”增加 20,一共重复 8 次。

提示

  • 第二棒必须由广播触发。在 Champ99 说完“该你了”之前,Avery Walking 不能说话,也不能移动。
  • “总步数”是两个角色共用的变量,两棒都累加到它上面。清零只做一次,写在 Champ99 的【当绿旗被点击】脚本里、开始跑第一棒之前,不要写在舞台代码区,否则第一次累加会被抹掉。
  • 两棒跑完后“总步数”应为 9×20+8×20=340,可以用它检查自己的程序。
  • 角色名和背景名要与题目完全一致,否则系统无法找到它们。