迷宫游戏:项目式学习的最佳题材
迷宫游戏是 Scratch 项目里性价比最高的题材:规则简单(从入口走到出口)、玩法直观、又能把方向键、碰撞检测、变量、广播、计时这些核心技能全用上。做完一个迷宫,孩子就同时复习了半本 Scratch 课本。
更重要的是,迷宫游戏"看得见进度":画一关、玩一关、改一关,每次改进都有即时反馈,特别适合培养项目式学习的习惯。
迷宫游戏是 Scratch 项目的"练手之王"。
- 移动方向键控制角色。
- 碰撞碰到墙壁回起点。
- 计分变量记录进度。
- 关卡造型切换做多关。
画迷宫:用画笔还是造型
迷宫有两条画法:用"画笔"积木动态画线,或者用绘图编辑器直接画一张"墙"的造型。推荐新手用造型法:画好一整个迷宫背景,代码只负责控制角色。
画的时候留好规则:通道宽度要大于角色直径(否则会"卡脸");入口在左下、出口在右上比较符合直觉;墙线用统一颜色(比如深蓝),方便后面做碰撞检测时一眼认出。
想省事可以直接复制 Scratch 自带的迷宫样例,或者先用纸笔画草图再照着画。
键盘控制:移动的主角
用"当按下方向键"事件控制角色移动:上键让 y 增加 10,下键让 y 减少 10,左键让 x 减少 10,右键让 x 增加 10。
伪积木示例:
当按下 上 键
将 y 坐标增加 10
当按下 下 键
将 y 坐标增加 -10
步长 10 是练习手感的好起点:太大容易"穿墙",太小走得慢。想更顺滑,可以改用"重复执行 + 按下侦测"的方式,让角色按住键就持续移动。
碰撞检测:碰到墙就回去
迷宫的核心逻辑是碰撞:角色碰到墙,就回到起点位置。用"如果碰到颜色(墙的颜色)那么"积木。
伪积木示例:
重复执行
如果 碰到颜色 深蓝 那么
移到 起点位置
播放声音 "碰撞"
注意:颜色选择器要精确点选墙的实际颜色,否则检测不到。碰撞后加一个"播放声音"和短暂的"等待",反馈更明显,玩家能立刻知道自己撞墙了。
终点与计分:过关的成就感
在出口放一个终点角色(比如一面小旗子),当主角碰到它,就"广播过关",同时让得分变量加一。广播是串起"角色到达终点 → 背景换音乐 → 显示胜利文字"的最佳工具。
伪积木示例:
当绿旗被点击
将 得分 设为 0
当角色碰到终点
广播 "过关"
将 得分 增加 1
加上计时变量(用 Scratch 的"计时器"),还能做出"用时最少"的目标,游戏的挑战感立刻翻倍。
关卡与计时:从一关到多关
多关卡的做法很经典:给迷宫背景角色画多个造型(第一关、第二关、第三关),每过一关"下一个造型",角色回到新关卡的起点。
伪积木示例:
当接收到 "过关"
下一个造型
移到 新起点
将 关卡 增加 1
如果 关卡 > 3 那么
说 "全部通关!" 2 秒
关卡难度递增的设计建议:先"通道宽、直路多",再"拐弯多、通道窄",最后加移动的障碍物(巡逻角色)。每加一关,就把前面学过的技能再用一遍。
发布与改进方向
做完可以点"发布到社区"让朋友挑战你的迷宫。改进方向有一大堆:加移动的巡逻敌人(用"重复执行+移动")、加金币收集(碰到金币得分)、加倒计时(时间到失败)、加音效和背景音乐(参考我们频道的"Scratch 音乐与音效创作")。
给孩子一个提醒:先做出"能玩的完整版",再慢慢加花。一上来就想要十全十美,容易卡在第一步。
- 完整版先做完再优化。
- 多关卡造型切换实现。
- 反馈音效与文字加体验。
- 发布分享给朋友挑战。