资源简介 经典扫雷游戏项目第一讲: 地图生成一、 课程目标1、掌握自制积木运行时不刷新屏幕的属性;2、掌握变量和列表的熟练使用,能够替换指定数目的随机的列表项内容;3、能够完成扫雷游戏的功能分析,了解扫雷游戏的实现思路。二、 课堂组织形式1、开放式问题讨论2、引导式思维发散3、问答式课堂互动4、针对问题探究实践5、学生动手制作项目6、课堂内容梳理巩固三、课堂准备编号 名称 内容 来源 备注【 1】 PPT 课件 课堂全流程演示文稿 火星科学盒官网【2】 课程资料 PPT 课件、讲义、视频 火星科学盒官网【 3】 教师参考程序 项目完整程序 网盘链接下载【4】 学生上课使用资料 笔记本电脑或者台式电脑 老师自备 电脑系统需求: win 10+,或 macOS 10.13+编程所需素材 网盘链接下载课堂报告 网盘链接下载【 5】 编程软件下载 scratch3.0 scratch 官网 课前下载安装四、主要脚本程序编号 详细内容 功能描述【 1】 “克隆(自己)” 克隆自己,生成外观、属性相同的角色【2】 “当作为克隆体启动时” 使克隆体执行命令【 3】 “在( )和( )之间取随机数” 在指定的数字范围内选取随机数【4】 “将(列表)的第( )项替换为 ( )” 将列表指定的某项进行替换,替换成指定的内 容五、上课流程本节课包括 5 步具体流程:(1)第 1 步为课程引入。老师引导学生了解扫雷游戏的规则,了解方块上数字的意义,学习扫雷的通关方法。老师带领学生体验 扫雷游戏,引出本节课的课程主题。时长控制在 10 分钟内。(2)第 2 步为项目分析。带领学生从游戏界面、角色外观特点、基本功能等方面分析扫雷游戏。时长控制在 15 分钟内(3) 第 3 步为作品编程。 逐步分析任务思路, 编写程序, 完成游戏开始时, 一个方块克隆生成 16×16 大小的雷区, 并在随机位置 放入雷的功能。时长控制在 30 分钟内。(4) 第 4 步为拓展思考。 思考如何修改程序, 可以为游戏添加模式选择按钮,选择不同困难程序的游戏。时长控制在 20 分钟内。(5)第 5 步为课堂总结, 知识图谱的形式总结课程内容,巩固重点知识点 。时长控制在 5 分钟内。上课步骤 主要内容 备注【第 1 步】 课程引入 【对应 PPT】“经典扫雷 游戏” 【时长】 10min 【引入】 学生分享自己是否玩过扫雷游戏, 并描述扫雷游戏的游戏规则。 【讲解】 1. 讲解扫雷游戏的游戏规则 2. 讲解扫雷游戏过程中,方块上出现的数字的意义 【互动】 1. 学生根据方块上显示的数字,快速确定给出的图片中有雷和没有雷的位置 2. 老师上传完整版的扫雷游戏,邀请学生进行游戏体验 【讲解】 根据视频描述编程任务:制作经典的扫雷游戏。【第 2 步】 项目分析 【对应 PPT】“作品功能 分析” 【时长】 15min 【讲解】 1. 老师带领学生分析游戏界面的分区及每个分区显示的元素 2. 老师带领学生分析扫雷游戏中有哪些角色,每个角色的外观特点是什么 3. 分析扫雷游戏中的基本功能4. 进一步分析游戏开始、鼠标点击方块、以及游戏结束时发生的事件及各个角色的反 应编写程序实现游戏开始时,方块以 16 行 16 列分布为雷区。并且指定个数的雷随机分 布在雷区中【第 3 步】 作品编程 【对应 PPT】“地雷地图 生成” 【时长】 30min 【制作】 学生新建作品,上传方块、黄脸按钮、数字角色和游戏背景 【讲解】 老师讲解使用克隆的方法,用一个方块角色,生成 16 行 16 列雷区的过程 【制作】 1. 学生编写程序, 添加存储雷区行数和列数的变量, 并设定变量的值(程序样例见“第 六部分 - 程序 1-1”) 2. 编写程序,使用克隆的方式, 生成 16×16 大小的雷区(程序样例见“第六部分 - 程 序 1-2”) 【讲解】 讲解自制积木中“运行时不刷新屏幕”这一选项的功能,讲解如何使用自制积木使所有 克隆体同时出现。【制作】 学生修改程序, 将克隆方块的程序定义为自制积木(程序样例见“第六部分 - 程序 1- 3”) 【制作】 添加“仅适用于当前角色”的变量, 为每个克隆体方块添加编号(程序样例见“第六部 分 - 程序 1-4”) 【讲解】 1. 讲解如何使用列表存储雷的位置,以及列表的列表项序号和内容分别表示的意义 2. 讲解如何初始化存储雷的位置的列表 3. 将指定数目雷放入雷区的随机位置也就是从列表中随机选取列表项, 替换列表内容。 老师逐步分析过程中需要用到的编程命令和编程方法 4. 老师带领学生分析如何避免替换重复的列表项 【制作】 学生编写程序,使用列表存储雷的位置(程序样例见“第六部分 - 程序 1-5”) 【讲解】 1. 老师带领学生分析,方块在不同情况下的显示的造型 2. 讲解使用列表存储每个方块当前显示造型的原因,和列表的项目编号与列表内容的意义 3. 讲解如何使用列表存储每个方块的显示造型, 以及如何让克隆体根据列表内容显示 对应的造型 【制作】 学生编写程序, 使用列表存储每个方块的显示的造型,克隆体根据列表的内容显示对应 的造型(程序样例见“第六部分 - 程序 1-6”) 【总结】 以提问的形式带领学生总结任务一中完成的功能效果、任务要求和编程思路【第 4 步】 拓展思考 【对应 PPT】“思考与拓 展” 【时长】 20min 【衔接】 本节课生成了一个 16 行 16 列含有 40 颗雷的雷区。现在这些数字是固定的, 重新开始 游戏后, 游戏的难度是相同的。能不能添加三个按钮, 用来选择进入不同难度的游戏呢 【讲解】 1. 带领学生分析不同难度的模式下,会有哪些数据不同,以及数据的具体值是多少 2. 讲解如何使用变量存储会发生变化的数据, 点击不同的按钮时,需要给这些变量赋 予不同的值 【制作】 学生上传三种按钮之后, 调整位置和大小, 之后为它们编写程序, 实现点击按钮后进入 此部分为课堂挑 战,根据课堂实 际情况完成不同难度的游戏(程序样例见“第六部分 - 程序小挑战-1”) 【讲解】 1. 老师讲解方块角色中哪些程序需要进行修改,修改的方式是什么 2. 带领学生分析方块角色脚本修改后,实现的具体功能 【制作】 学生根据要求,修改方块角色的程序(程序样例见“第六部分 - 程序小挑战-2”)【第 5 步】知识巩固 【对应 PPT】“总结与巩 固” 【时长】 5min 老师根据ppt 中的知识图谱回顾本节课的主要内容,带领学生完成知识总结六、主要程序说明任务一: 游戏开始, 生成 16×16 大小的雷区,40 颗雷随机分布在雷区中程序样例编号 程序样例与说明 对应的角色1-1 【程序 1-1 描述】 点击绿旗后, 将变量行数和列数的值设为 16。 【方块】1-2 【程序 1-2 描述】 点击绿旗后,设置行数和列数为 16,角色隐 【方块】藏,从(-130,120)的位置开始克隆,克隆每一行时,先克隆再 向右移动。克隆下一行时,先移到行开头的位置,再重复以上过 程。克隆体需要显示在舞台上1-3 【方块】【程序 1-3 描述】点击绿旗后, 设置行列数的值,之后克隆方 块,生成雷区。1-4 【方块】【程序 1-4 描述】 克隆方块角色时,使用变量为克隆体编号,每 个克隆体有一个自己的编号。将变量“方块编号”的初始值设为 1,每克隆一次,就将变量增加 1。1-5 【方块】【程序 1-5 描述】 点击绿旗后,设置行数和列数以及雷的总数, 之后将雷的位置存储在列表中,然后克隆方块。存储雷的位置 时,先将列表初始化:列表的项目数等于方块个数,列表项内容 为 0。之后随即抽取其中的雷的个数项进行内容替换,为了避免 替换重复的列表项,只有当这一项的列表内容为 0 时才能替换。1-6 【程序 1-6 描述】 点击绿旗后,设置行数、列数和雷的总数。之 后初始化存储方块造型的列表,列表的项目数等于方块的个数, 列表的初始内容是 9,表示“造型9”。之后设置雷的位置并克隆 方块 【方块】【程序 1-6 描述】 生成的克隆体显示在舞台上,并根据列表的内 容显示对应的造型。小挑战: 游戏开始后,可以通过点击不同的按钮进入不同难度的游戏程序样例编号 程序样例与说明 对应的角色小挑战-1 【按钮】【程序小挑战-1 描述】 点击绿旗后, 角色显示。角色被点击时, 将变量设为对应的数值,广播游戏开始的消息 。所有按钮在接收 到游戏开始的消息后,隐藏。小挑战-2 【程序小挑战-2 描述】 接收到游戏开始的广播消息后,初始化 “方块造型”列表,之后使用列表存储雷的位置,并克隆方块 【方块】【程序小挑战-2 描述】 克隆方块时,方块的大小、第一个方块的 位置、行列数、方块间的间隔都是根据游戏难度决定的。(共48张PPT)经典扫雷游戏地图生成经典扫雷游戏思考与拓展作品功能分析地雷地图生成总结与巩固经典扫雷游戏1扫雷游戏扫雷游戏的规则是什么扫雷游戏扫雷规则游戏开始时生成整齐排列的方块,某些方块下是地雷玩家需尽快找到并点击所有不是地雷的方块如果“踩”中地雷,则游戏失败扫雷扫雷规则方块上的数字表示什么 周围有4颗雷方块上的数字表示方块周围的8个方块;中含雷的个数8个方块:上、下、左、右、左上、左:下、右上、右下扫雷扫雷规则1234512345图 中 的 哪 些 位 置 有 雷 哪 些 没 有 ?有雷的位置:第1行第3列;第2行第5列;第4行第5列没有雷的位置:第1行第4列;第1行第5列;第3行第5列游戏比拼运行游戏,比一比谁能最快找到所有不是雷的方块,获得游戏胜利编程任务编程任务使用scratch编程制作一个扫雷游戏作品功能分析2游戏胜利检测功能区游戏区游戏时长重新开始按钮雷的个数扫雷游戏需要哪些角色?角色的外观有什么特点?方格笑脸按钮数字未被点击:有雷的方格被点击:无雷的方格被点击:空白方块或1~8的数字方块标记小红旗:游戏过程中显示为笑脸游戏失败时,显示失败造型游戏胜利时,显示胜利造型]0~9的数字造型,用于显示雷的个数和时间基本功能扫 雷 游 戏 有 哪 些 基 本 功 能 ?鼠标左键点击未开发区域:触发雷:游戏失败并停止未触发雷:显示周围雷的个数鼠标右键点击未开发区域:使用小红旗标注或取消标注全部不是雷的方格被点击→游戏胜利点击黄脸按钮可以重新开始游戏数字记录雷的个数和所用时间游戏开始数字生成雷的个数的显示屏,和时间显示屏黄脸按钮显示笑脸造型方格整齐排列成雷区指定个数的雷随机分布在雷区的方格中鼠标点击鼠标左键点击方格:判断是否有雷没有雷时计算周围雷的个数,显示对应数字鼠标右键点击方格:标记此处有雷→显示小红旗造型取消标记→显示空白方格造型数字显示:左侧数字显示未被标记的雷的个数右侧数字显示所用的时间游戏结束当点击方块触发雷时,游戏会失败并停止所有不是雷的方块被开发完成时,游戏胜利地雷地图生成3作品准备①删除原始角色②上传所需角色③上传背景任务1任务一:生成由方格组成的,雷分布在随机位置的雷区生成雷区(如何使用一个方块生成整齐排列的雷区?逐行克隆:克隆每一行:克隆自己 向右移动重复“列数”次克隆多行:移到下一行开头后重复之前的操作设定行列数Step1:变量设定雷区的行列数16列16行编程任务试一试:编写程序,使用方块角色克隆生成16×16的雷区17(-130,120)17生成雷区Step2:克隆生成16×16的雷区开始隐藏移到初始位置克隆自己向右移动移到下一行开头执行列数次执行行数次显示速度如何让雷区中的所有方块同时显示?运行时不刷新屏幕:执行这组自定义积木的过程中不显示执行过程,直接显示执行结果将克隆方块的脚本定义为目制积木,并勾选不刷新自制积木如何添加成对的随机数到列表?Step3:将克隆方块的脚本定义为自制积木克隆体编号如何打乱列表顺序?每个方块需要有一个能进行识别的身份,用于判断此处是否有雷,以及计算周围雷的个数。新建仅适用于当前角色的变量为克隆体方块编号Step4:使用变量为克隆体方块编号雷的分布计算行列数和序号1.将雷的个数设定为402.列表存储每个方格是否有雷的状态对应方块编号列表项为0,此处没有雷列表项为1,此处有雷雷的分布新建列表存储雷的分布区域:列表的项目数:方格的个数初始状态:没有雷,列表项全部为0放入雷将雷放入雷区:雷的总数为40→将列表中的40项内容从0替换为1雷在雷区中随机分布→随机选择列表项进行替换①新建临时变量:②随机选择列表项:③替换列表项内容:④一共替换“雷的总数“项:放入雷清空列表列表项目数等于方格个数列表的项目内容全部为0替换雷的数目项选取列表项替换列表内容执行的结果有什么问题?有可能选取到相同的数字,使得替换的数目小于雷的数目放入雷选取随机数这一项是否为0替换为1是否知识分享Step5:使用列表存储雷的位置方块的显示状态没有被点击:造型9被点击后有雷:造型11被点击后无雷:造型0造型3造型2造型4造型5造型6造型7造型8造型1鼠标右键标记:造型10存储方块状态使用列表存储方块的显示造型,通过改变列表内容改变方块的造型:根据列表的内容显示对应的造型:方块编号造型名称中的数字造型名称存储方块状态Step6:使用列表存储方块显示的造型清空列表列表项目数等于方块个数初始为“造型9“方块一直根据列表的内容显示对应的造型程序梳理如何使用一个方块角色生成16×16的雷区?1.使用克隆的方法2.逐行克隆,每克隆一次之后向右移动3.移到下一行的开头位置,重复以上过程程序梳理如何将指定个数的雷放入雷区的随机位置?1.建立列表,存储雷的位置2.初始化列表:将方块个数个0添加到列表3.替换“雷的个数”项列表内容为1,随机选取列表项进行替换思考与拓展4程序进阶能否使用按钮选择游戏难度数据分析简单模式方块个数:行数:10,列数10方块的大小:150起始位置:x坐标:-115,y坐标:115方块间的距离:25一般模式困难模式方块个数:行数:14,列数14方块的大小:120起始位置:x坐标:-130,y坐标:120方块间的距离:20方块个数:行数:16,列数16方块的大小:100起始位置:x坐标:-130,y坐标:120方块间的距离:17变量使用变量存储数据:点击按钮,设置变量的值:选择的模式不同,变量的值不同按钮角色Step1:点击按钮角色,选择不同困难模式,开始游戏不同角色填入不同的数字方块角色方块角色在接收到“开始”的广播消息后,克隆生成雷区:方块角色上不需要添加设置变量值的脚本克隆方块设置方块大小设置第一个方块的位置为每个方块添加序号克隆的方块的个数方块间的距离Y坐标减小,需要把数字变成负数方块角色总结与巩固5 展开更多...... 收起↑ 资源列表 第1.docx 第1节- 地图生成.pptx