状课网-少儿编程网课专业平台
元旦已过,离过年的时间越来越近了。小编在这里提前祝大家新年快乐。今天给大家带来scratch编程“贪吃蛇”游戏。
案例介绍
相信大家都有玩过贪吃蛇游戏吧。那道长长的尾巴让会让你很有成就感。亲爱的大朋友、小朋友快快跟老师一起来体验一下吧。
案例分析
1.背景和角色分析
4
本程序一共个背景,分别是:
“开始”背景,用于程序开始界面显示。
“说明”背景,用于显示游戏的使用说明。
“游戏中”背景,用于游戏进行中的界面显示。
“结束”背景,用于提示游戏结束。
5
本程序一共个角色:
蛇:可以移动,吃掉的小球越多就会变得越长。
小球:会随机产生到“游戏中”背景里。
开始游戏:点击按钮游戏开始。
说明:点击按钮出现“说明”,并且按钮会变成返回。
再来一次:点击按钮,游戏重新开始。
2.变量分析
6
“贪吃蛇”游戏一共有个变量,如下:
时间、时、分
,主要是用来显示当前游戏时间,时间到2分钟游戏结束。
小球数量,设置贪吃蛇可以吃掉小球的个数。
长度:指贪吃蛇吃掉小球后,自己所增加的长度。
等待时间:用来让贪吃蛇,尾巴变长的变量。
3.代码分析
“开始游戏”角色代码
“开始游戏”角色代码,如下:
当点击绿旗时,显示开始游戏按钮并且把背景设置为“开始”,并且显示“游戏说明”按钮。将长度值设置初始化为0。如果按钮碰到了鼠标,就将颜色增加10(这个地方重复执行)。
当角色被点击时,将计时器归0.将背景设置为“游戏中”。将所有变量初始化为0.将长度变量显示出来。接下来是如何显示时间,先将计时器里的值取整存到“秒”,然后将时间变量的值变为“分:秒”的格式。如果“秒”大于59,“分”变量就增加1,然后 计时器归0,“秒”也清零重新计数。如果“分”大于1,就广播游戏结束,将背景变为“结束”(重复执行时间显示)。
当角色被点击时,隐藏角色,广播游戏开始。
当接收到消息“游戏说明”隐藏角色。
当接收到消息“返回”显示角色。
“说明”角色代码
“说明”角色代码:
当点击绿旗时,显示“游戏说明”按钮。如果碰到鼠标则颜色值增加(重复执行)。
当接到“游戏开始”消息,则隐藏该角色。
当角色被点击时,切换到下一个造型。本段代码主要是让“游戏说明”和“返回”两个按钮能通过点击自由切换,当“游戏说明”被点击时,广播“游戏说明”隐藏“游戏开始”,当“返回”被点击时,广播“返回”则显示“游戏开始”。
“再来一次”角色代码
“再来一次”角色代码:
当绿旗被点击时,隐藏角色。
当收到“游戏开始”消息,隐藏角色。
当收到“游戏结束”,将时间隐藏,显示角色。
角色被点击时,广播“游戏开始”,游戏再次启动。
前面三个角色所能呈现的效果如下:
“小球”角色代码
接下来是“小球”角色代码:
当点击绿旗时,隐藏角色。
当收到“游戏开始”消息,先将小球数量初始化为0,然后克隆自己产生小球,每产生一个小球,小球数量增加,如果小球数量超过20,就不再克隆自己。这里有两个重复执行,目的是,如果小球数量减少到20以内,就会再次克隆自己,以满足20个小球的数量,也就是说贪吃蛇是吃不完小球的。
当作为克隆体启动时,就显示出克隆体。这里要注意的是,小球一共有5个造型,我们通过随机选择造型的方式,来产生不同颜色的小球。然后 将小球移动到随机的位置上,如果小球碰到了蛇,小球数量就会减少1,然后删除此克隆体。
当收到消息“游戏结束”,同样删除所有小球。
“蛇”角色代码
“蛇”角色代码如下 :
当点击绿旗和收到消息“游戏结束”时,隐藏角色。
当收到“游戏开始”消息,将变量“等待时间”和“长度”初始为0.然后将角色移动随机位置,然后显示出来。默认向右移动,速度为3,如果按下方向键则向方向键的方向移动。接下来就是如何让“蛇”有尾巴了,先克隆自己,克隆时要等待0.01秒,(为什么要等待0.01秒,这是为了让克隆体在本体的后面出现。)显示长度变量,如果角色碰到小球,将等待时间变长,然后 长度增加1.
当作为克隆体启动时,将造型变为圆球_1,也就是黄色的小球。然后重复5次等待,然后删除克隆体。(这里主要是让克隆体存在一定的时间,也就决定了尾巴的长度,等待时间越长,尾巴就会越长。)
结 语
今天的案例就分享到这里了。关于“贪吃蛇”这个游戏,这里只是进行了简单的拆分和讲解,其中具体的奥妙还需要同学们自己动手去做一做才能体会。比如:分和秒时间是怎么来的?蛇的长度是如何控制的?蛇的尾巴是怎么画出来的?等等
文章来源:中小学Scratch编程
Scratch中有一个非常重要的区域,代码区。代码区就像是储存积木的小盒子,有9个不同颜色的模块,每个模块都对应的文字,运动、外观、声音、事件、控制、侦测、运算、变量、自制积木
542021-04-10 22:11:55
我们继续研究Scratch3.0编程与数学。今天我们一起来探讨的是最大公因数。
162021-04-26 16:04:01
把一个合数分解成若干个质因数的乘积的形式,即求质因数的过程叫做分解质因数。分解质因数只针对合数。
202021-04-26 15:59:18
前面三个案例发布后,收到很多老师们的反馈信息。大家提出了许多宝贵建议,在此由衷的表示感谢。一个人的力量和思路毕竟是有限的,欢迎老师们多多提意见。无论是从哪个方面,数学知识本身、Scrach3.0编程方面
172021-04-26 15:49:17
1.质数:又称素数。一个大于1的正整数,且只能被1和它本身整除,那么这个数就是质数。也就是说质数只有2个因数,1和它本身。
142021-04-26 15:29:04