和小朋友一起写游戏——Scratch少儿编程(1):小馋猫

网友投稿 2019-12-09 11:25


《Scratch3.0编程趣味游戏书:精品编程游戏20例》简介

麻省理工学院开发的Scratch将枯燥的代码转变成积木式的模块。

《Scratch3.0编程趣味游戏书:精品编程游戏20例》将书中包含的20例游戏分成了5个阶,每例游戏都有明确的学习内容,编程难度逐层递进,很多游戏还包含“挑战一下”和“试一试”,鼓励小朋友们自主思维,大胆创新,勇于调试,直到让你成为“Scratch编程小达人”。

本篇讲述第一例游戏:小馋猫的教学实录。


原书中的内容简述

这是书中的第一例游戏,一只小猫在舞台(背景)范围内随着鼠标的移动而移动。舞台之上还有数个苹果,当小猫遇到苹果的时候,苹果会立刻消失掉,仿佛被吃掉了。

这是一个“入门”游戏,在游戏设计过程中的学习内容包括:

  1. 事件驱动

  2. 控制语句(循环语句、条件语句)

  3. 运动语句、外观语句

  4. 角色复制

思维导图

https://cdn.china-scratch.com/timg/191211/11253QK8-0.jpg

脚本示例

  • 小猫的脚本

https://cdn.china-scratch.com/timg/191211/1125403Q9-1.jpg

  • 苹果的脚本

https://cdn.china-scratch.com/timg/191211/1125405017-2.jpg

这个游戏中不用编辑背景,没有变量,只需要添加小猫和苹果两个角色,编写上述脚本,再复制数个苹果角色,这个游戏就写完了。

游戏截屏

https://cdn.china-scratch.com/timg/191211/1125403W2-3.jpg


教学中的一些改变

这例游戏的主要目的,是要让小朋友熟悉Scratch的开发环境。严格来说,这其实都不能算作是一个完整的“作品”。游戏的运行过程,基本属于“有头无尾”的状态,当所有的苹果都消失了,游戏就已经结束了,还需要自己点击“停止”按钮退出游戏。

因为基于Scratch的官方教程,我和小朋友已经一起完成过一些Scratch小游戏,所以书中的原始内容显然无法满足我们的“胃口”了。

在实际的教学环境下,我们决定增加一些内容,“挑战一下”。

增加“游戏控制”角色

首先,我们基于消息和广播机制,增加了一个游戏控制角色,将游戏的整体控制,和各个角色的运行分离。

当编写稍大规模的游戏,随着游戏复杂度的增加,单独设置一个游戏控制角色会使得编写游戏的思路更加清晰,提高脚本的可读性,便于维护。

整个游戏的运行过程可以分解为:准备(程序初始化)、开始(程序运行)和结束(程序终止)3个阶段。

为了判断游戏终止条件,增加变量苹果数,当舞台上剩余苹果的数量等于零的时候,程序就可以结束了(在程序正式结束之前,还可以调整各个角色的状态)。

思维导图

https://cdn.china-scratch.com/timg/191211/112540B95-4.jpg

脚本示例

  • 游戏控制角色脚本

https://cdn.china-scratch.com/timg/191211/1125411354-5.jpg

  • 小猫的脚本

https://cdn.china-scratch.com/timg/191211/112541ID-6.jpg

  • 苹果的脚本

https://cdn.china-scratch.com/timg/191211/1125425642-7.jpg

在脚本中我们还增加了苹果的颜色特效。

应用克隆体

为了进一步增加游戏中的随机性,和程序的简洁性(上述程序需要复制很多个苹果角色,这显然无法让我和小朋友感到满意)。我们想到了克隆体。保留一个苹果角色,将其他苹果角色删除,修改苹果角色的脚本如下就可以了。

https://cdn.china-scratch.com/timg/191211/1125423259-8.jpg

游戏截屏

  • 游戏开始

https://cdn.china-scratch.com/timg/191211/11254360A-9.jpg

  • 游戏结束

https://cdn.china-scratch.com/timg/191211/112543O48-10.jpg

--end--

声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com