用图形化编程做一个「城市生态小卫士」:克隆体、广播与变量串起完整小游戏

一、引言:从一场国际图形化赛事说起

最近 IECC 2026 全球环境编程大赛 开放报名(U12 组指定使用 Scratch 3.0),主题聚焦「Code the City(可持续城市)」与「Botanical Biodiversity(植物多样性)」------要求孩子用积木搭建一个能解决真实环境问题的交互作品。这类赛题最看重三件事:编程熟练度、视觉创意、用户体验,正好对应图形化学习的几个核心能力。

很多同学会做「点一下动一下」的小动画,但一到「让一堆垃圾自己飘、能分类、能计分、还能倒计时结束」就卡壳。今天我们用一个原创项目 「城市生态小卫士」克隆体、变量、条件、广播、列表、自制积木一次性串起来,照着拆你也能做出赛事级作品。

二、项目目标

玩家操控一名「生态小卫士」,在城市街道上巡逻:

  1. 街道上不断克隆出乱扔的垃圾(可回收 / 厨余 / 其他三类)。
  2. 小卫士碰到垃圾即收集,按类别投入对应垃圾桶计分;投错扣分。
  3. 点击空地可种下一棵绿植,提升「绿意值」(呼应植物多样性主题)。
  4. 限时 60 秒,倒计时结束广播「游戏结束」,结算总分与绿意值。

一句话:把「清洁城市 + 绿化城市」两件环保实事,做成一个能玩、能算分、能收尾的完整小游戏。

三、核心考点清单

考点 在本项目中的作用
克隆 垃圾、绿植用克隆体批量生成,避免手动复制十几个角色
变量 分数、绿意值、倒计时、连击数
条件判断 碰撞检测、垃圾分类对错、点击区域判定
循环 克隆体持续下落、计时循环、垃圾源源不断生成
广播 开始 / 倒计时归零 / 游戏结束 的场景切换
列表 记录已收集的垃圾类型,用于结算面板
自制积木 把「生成一批垃圾」「种一棵树」封装成可复用积木

与常见入门项目不同,本篇把克隆体作为主线索------这是很多同学从「会做动画」跨到「会做游戏」的关键一步。

四、积木拆解(文字版,可直接照搬到 Scratch)

模块 1:角色与舞台

  • 舞台背景:城市街道(可用 Scratch 自带背景或自绘)。
  • 角色:小卫士(玩家控制)、垃圾桶×3(可回收蓝 / 厨余绿 / 其他灰)、垃圾(作为克隆原型,本体隐藏)、绿植(克隆原型,本体隐藏)。

模块 2:用克隆生成垃圾(核心)

垃圾 角色代码:

  • 当绿旗被点击:隐藏自己(本体只做模板)。

  • 新建自制积木「生成一批垃圾」重复执行 10 次创建 垃圾 的克隆体

  • 每个克隆体启动:显示移到 随机位置(舞台上方)将 类型 设为 在 [可回收,厨余,其他] 中随机选一个换对应造型面向下方,滑行/移动 下落

  • 下落到底部仍没被收走:删除此克隆体,并调用「生成一批垃圾」补一批,形成源源不断的效果。

模块 3:小卫士巡逻与收集

  • 当按下 左右方向键将 x 坐标 改变 ±10(边界用 限制 x 在 [-230,230] 条件限制)。
  • 当按下 空格小卫士 快速下移 去接垃圾。
  • 碰撞检测(小卫士与某克隆体):如果 碰到 小卫士广播「收集到垃圾」并带上类型删除此克隆体

模块 4:垃圾分类计分(条件)

用一个列表 已收集 和变量 分数

  • 收到「收集到垃圾」广播时:

  • 将 类型 加入 列表 已收集

  • 如果 类型 = 当前最近垃圾桶类别分数 增加 10否则 分数 减少 5(投错)。

  • 这里训练的是**「用条件判断区分状态」**,也是赛事评分里「Logic & Coding」的高频得分点。

模块 5:点击种绿植(植物多样性)

  • 当角色被点击(舞台空白区):在点击位置 创建 绿植 的克隆体
  • 绿植克隆体:显示换成小树苗造型绿意值 增加 1等待 0.5 秒换大树造型(做一个生长的小动画)。
  • 配合「Botanical Biodiversity」主题,可在舞台角标实时显示绿意值。

模块 6:倒计时与结束(广播)

  • 变量 倒计时 初始 60。
  • 当绿旗被点击重复执行 60 次等待 1 秒倒计时 减少 1如果 倒计时 = 0广播「游戏结束」停止 全部脚本
  • 「游戏结束」接收方(舞台):显示 结算面板说 出 "总分:分数 ,绿意值:绿意值" 2 秒

模块 7:自制积木封装

把重复动作抽成两个自制积木,代码立刻清爽:

  • 生成一批垃圾(如上)。

  • 种一棵绿植(位置):接收 x/y 参数,创建并播放生长动画。

五、文字流程图

复制代码
绿旗点击
  ├─ 小卫士:等待方向键 / 空格输入
  ├─ 垃圾模板:生成一批克隆 → 克隆体下落
  │     └─ 碰到小卫士 → 广播「收集到垃圾」→ 删除克隆
  ├─ 分类逻辑:收广播 → 比对类型 → 加分/扣分 → 写入列表
  ├─ 舞台空白点击 → 种绿植克隆 → 绿意值+1
  └─ 倒计时 60→0 → 广播「游戏结束」→ 结算面板

六、运行效果

  • 开场:城市街道背景,小卫士居中,三个垃圾桶一字排开。
  • 进行中:垃圾从顶部不断克隆下落,操控小卫士左右接住;接对类目分数跳涨,接错闪红扣分;点空地种树,绿意值缓慢爬升。
  • 收尾:60 秒到,屏幕中央弹出结算卡,显示「总分 / 绿意值 / 收集数量」,可点绿旗再来一局。

七、进阶(赛事加分方向)

  1. 难度曲线 :随分数升高,加快垃圾下落速度(用变量控制 移动步数),体现「Functionality」。
  2. 连击系统 :连续投对 3 次触发 连击数,分数倍率 ×2,增加策略性。
  3. 音效与视觉:收集成功播短音、种树冒绿叶粒子,提升「Visual & Creativity」评分。
  4. 多关卡广播 :用 广播「下一关」 切换背景与垃圾密度,做成三关递进。
  5. 数据持久化(进阶):把最高分写进列表,下次打开读取,做「个人最佳」榜。

八、小结与互动

一个「城市生态小卫士」就把克隆、变量、条件、循环、广播、列表、自制积木七大图形化考点全串起来了,而且天然贴合「可持续城市 / 植物多样性」的赛事主题------这正是评委最想看到的「用编程解决真实问题」。

你正在准备哪类图形化比赛?是垃圾分类、智能城市,还是科普动画?欢迎在评论区聊聊你的项目创意,我可以帮你拆解成具体的积木结构。

本文为原创图形化项目教程,仅供学习交流,不照搬任何真实赛题原题。


📚 免费少儿编程资料(夸克网盘领取)

以下资料来自夸克网盘分享,点击链接可直接保存;若需在 App 内打开,也可复制下方明文链接:

  1. 全国青少年信息素养大赛复赛集训题目Python&C++.docx
    https://pan.quark.cn/s/93995d3cb150
  2. 2024信息素养-智能算法应用挑战赛-复赛初中组题目7月7日.pdf
    https://pan.quark.cn/s/da97b5dbf75d
  3. Python背记手册.pdf
    https://pan.quark.cn/s/7568ae9ca92b
  4. Python课程
    https://pan.quark.cn/s/a94bf02d00c6
  5. 2024信息素养大赛图形化复赛集训题答案3-9
    https://pan.quark.cn/s/6ccab7ec3cbc
  6. 2025年03月份电子学会考级真题
    https://pan.quark.cn/s/4403c4228912
  7. 2025全国青少年信息素养大赛赛项说明
    https://pan.quark.cn/s/d9d0df4a9f29
  8. 青少儿信息素养大赛编程资料
    https://pan.quark.cn/s/4ab6bd83be8a

资料持续更新,关注获取最新分享。

相关推荐
何以解忧,唯有..10 小时前
Python time 模块详解:时间处理与日期操作指南
开发语言·python
梅雅达编程笔记10 小时前
Day 18 · 综合实战 B:AI 客服 Agent(专栏收官)
python·智能客服·ai agent·意图识别·ai客服·大模型应用·ai办公自动化
初夏睡觉10 小时前
原创题目 - 空壳恋爱
c++·算法·dp·oi·信息学·原创题目·值得挑战的题目
间歇性努力持续性发呆的野生快乐选手10 小时前
stl容器使用和算法简介
数据结构·c++
测试老哥10 小时前
Pytest自动化测试框架tep环境变量、fixtures、用例三者之间的关系
自动化测试·软件测试·python·测试工具·测试用例·pytest·职场发展
Buke..11 小时前
【APP 逆向】哔哩哔哩 sign 参数逆向(下):OLLVM 混淆还原 sign 算法
java·javascript·爬虫·python·算法
JacksonMx11 小时前
Java CompletableFuture 异步编程实战:从入门到架构师避坑指南
linux·数据库·python
闲研随记11 小时前
【文献阅读 ICLR 2026】RL算法:DECS
算法·llm·强化学习·iclr·rl
W_3260011 小时前
Python-OpenCV HSV颜色空间与inRange颜色分割:按颜色提取目标物体
图像处理·人工智能·python·opencv·机器学习
量化小c11 小时前
一行代码查 BTCUSDT 和 AAPL 最新价?QuantDash 统一多市场实时行情接口实战
后端·算法·github