(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]

(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]几乎在学习任何一种编程语言过程中,都会拿《贪吃蛇》这款游戏来实战练手,那如何用Scratch来制作《贪吃蛇》呢?首先声明制作《贪吃蛇》方法多种多样,不局限于我这一种方法,我这一种是我平常给孩子上课,我认为比较容易理解的一种方法。这个方法适合教培机构Scratch讲师,青少年,和对Scratch感兴趣的成人编程小白学习。废话不多说我先上成品图:介绍:1.游戏界面:2.游戏规则:(1)游戏开始,只有蛇头,蛇头会自动移动,玩家通过控制方向键控制蛇移动的方向(2)游戏开始会随机

大家好,欢迎来到IT知识分享网。

(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]

几乎在学习任何一种编程语言过程中,都会拿《贪吃蛇》这款游戏来实战练手,那如何用Scratch来制作 《贪吃蛇》呢?


贪吃蛇


首先声明制作《贪吃蛇》方法多种多样,不局限于我这一种方法,我这一种是我平常给孩子上课,我认为比较容易理解的一种方法。不需要使用链表,代码简单好理解。这个方法适合教培机构Scratch讲师,青少年,和对Scratch感兴趣的成人编程小白学习。废话不多说我先上成品图:


介绍:

1.游戏界面:

(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]

2.游戏规则:

(1)游戏开始,只有蛇头,蛇头会自动移动,玩家通过控制方向键控制蛇移动的方向

(2)游戏开始会随机生成苹果,苹果不会生成在砖上,蛇身上,苹果上。

(3)蛇撞击砖块游戏结束,蛇吃掉10个苹果,游戏胜利。


正式制作:

游戏素材:

游戏素材非常简单,我们只需要准备一个蛇头,这个可以去网上找图片,然后转换成png格式,背景砖块可以自己画一个。至于蛇身体,还有苹果都可以在Scratch里面找到。蛇头,蛇身体是蛇这个角色的不同造型。至于使用Scratch3.0还是2.0,其实都一样。我个人比较喜欢用Scratch2.0。

(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]

思考问题?

1.蛇头方向如何控制?

2.蛇身是怎么变长的?(难点)

3.蛇身长度与吃掉苹果个数的关系?(难点)

4.苹果如何出现在随机位置且不会落在砖块,蛇头和自身身上?

5.蛇头碰到砖块,游戏结束。

6.如何设置满分10分,闯关成功?

7.苹果摆动效果如何实现(附加特效,可作为作业)

解决问题:

1.蛇头自身会移动,为什么要加上等待呢?上课的时候可以让学生试一下不加等待是什么效果。如果不加等待的话,蛇移动速度会非常快,这个大家可以自行设置。我这里提供的是我认为合适的等待时间。至于为什么是移动16步,这个其实是根据你的素材原始大小来设置的,大家可以根据自己的素材去设置,总的原则就是,移动的距离刚好可以首尾相连。大家自己试一下就知道自己移动多少步合适。

(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]

蛇头是通过方向键控制的↑↓←→

(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]

2.蛇身是怎么变长的?(难点),其实也比较简单,我们只需要让蛇每走一步克隆一个自己就可以,我们使用【将造型切换为蛇身】这个积木显示的是另一个造型,也就是蛇身体,同时因为克隆体会覆盖本体,所以我们让克隆体出现在本体后-16步,(-16前面已经讲清楚了),本体就是蛇头,克隆体就是蛇身体。当到这一步后,你点击运行,会看到每走一步,蛇身体会加长一节。如果不加干预的话,蛇身体会越来越长。

有人会问,贪吃蛇不是吃到苹果才会身长加1吗?为什么我这里会是一开始就让蛇身长增长。后面会讲到,但是这里我稍微的说下我的思路。贪吃蛇难点在这里,你要保证蛇身体的行进路线和蛇头一样。最开始我想的是,当蛇头吃到一个苹果后,蛇头再克隆一个,然后再接到蛇头后面,这个是可以的,但是仅限于一个,当吃的苹果多了后,如果你继续克隆,那么新克隆的会覆盖在第一个克隆体上,按逻辑新克隆体应该出现在蛇身末尾,但是如果此时蛇身体不是直线形状呢?那会把整个代码整的非常复杂。我需要讲给只有几岁的学生听,所以方法不能太复杂。所以正逻辑思维不可以。那我就反着来。我让蛇每走一步都在克隆自己,然后再让每一次新克隆出现在本体后面,这样其他的克隆体就不需要动。蛇身后有一条长长的身体。但是显然蛇没吃苹果,身长肯定为0。我在想那我可不可以,前面边克隆,后面我边删除呢?前面每隔0.2秒走一步,同时克隆一个自己,放在靠近蛇头身后,我后面删除克隆体呢?这样我刚克隆完自己,然后又删除了克隆体。那么蛇身后就没有其他。现在的问题是,如何找到吃掉苹果个数和蛇身后长度的关系,且看下面讲解:

(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]

3.蛇身长度与吃掉苹果个数的关系?(难点)我们需要的是吃掉苹果蛇身长增加1,没吃苹果蛇身长为0,为此我们创建【蛇身长】这个变量,每吃一个苹果就让蛇身长变量加1,蛇身长这个变量就是我们关系的纽带,蛇身长变量把吃苹果个数量化了,原本我们是蛇头克隆,然后再删除克隆体,这样保证了没吃苹果情况下,只有蛇头长。因为蛇是每等待0.2秒走一步,所以那我们可不可以等待 【0.2 X 蛇身长】秒再删除克隆体呢?那这样的话,蛇身后剩下的克隆体个数就和苹果数联系上了。这个就是我的方法。

(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]

(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]

4.苹果是随机出现,但是苹果不能出现在砖块上,也不能出现在蛇身体和蛇头上,还有不能出现在苹果本身上。我们可以让苹果这个角色【重复执行15次】克隆自己,然后再让克隆体随机出现在屏幕上,这个就通过【重复执行直到】这个模块来实现。

(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]

5.蛇头碰到砖块,游戏结束。单单就这个功能而言,我们只需要在蛇头角色里侦测,如果蛇头碰到红色砖块,那么我们就发出一个广播游戏失败,其他角色接收到游戏失败,比如背景就显示游戏失败的背景图片。

(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]

6.如何设置满分10分,闯关成功?前面我们设置了蛇身长这个变量,这里我们只需要判断蛇身长=10时,就广播闯关成功,然后背景图片接受到后,也就切换到成功背景。

(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]

 7.苹果摆动效果如何实现(附加特效,可作为作业),我们给苹果设置一个初始角度,然后让苹果左旋转 初始角度X2 的角度,等待一定时间后,再右旋转 初始角度X2 的角度。如此就可以让苹果左右摆动。

(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]

(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]


总结:

这里放上完整版代码,里面我加了一些效果,比如开始动画,但是这些无关紧要,主要把上面几个功能弄清楚了,这个就不能难了。

舞台代码如下,舞台背景有四个造型(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]

 蛇角色代码,蛇角色有两个造型(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]

 苹果角色代码

(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]

 感谢大家抽出时间来看此文,本人水平有限,希望大家不吝赐教,指出存在的问题,大家一起学习成长 

(十)Scratch制作《贪吃蛇》,超详细[通俗易懂]

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/7264.html

(0)
上一篇 2023-01-04 11:10
下一篇 2023-01-04 11:30

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信