Scratch小鸭子吃面包

Scratch小鸭子吃面包-51scratch
Scratch小鸭子吃面包
此内容为付费资源,请付费后查看
9.9
限时特惠
19.9
立即购买
您当前未登录!建议登陆后购买,可保存购买订单
付费资源

作品简介

一只饥饿的鸭子来到一条流淌的河流边,河流上飘着它爱吃的面包,当然也有一些垃圾,在有限的时间内,它究竟能吃到多少面包呢?

整个作品有3种主要角色:

  • 小鸭子:饥饿的小鸭子已经迫不及待的想吃到面包了,请你帮忙用鼠标来控制小鸭子来吃到面包吧。
  • 面包:顺流而下的小面包,散发着香气,有的面包滑的快,有的滑的慢,不要吃漏了哦。
  • 垃圾:夹杂在面包间的垃圾如果被小鸭子吃掉会扣分的,小鸭子会很难受的。

思路分析

最先的肯定是理清思路:如何做出这个游戏?如何控制结束?如何判断输赢?如何美化游戏?

1. 为了方便控制,我们可以选择鼠标控制小鸭子移动

2. 不如用一个小圆盘来表示时间既好看又生动形象

3. 给面包和垃圾定义分数这个变量,比如,吃一个面包加多少分,吃到垃圾就扣多少分,方便计算结果

4. 最后加上一些修饰,放音乐,吃面包或者吃垃圾时发出不同的声音,游戏开始,结束时的音效当作画龙点睛之笔

编程实现

有了以上思路我们就可以开始写代码了

第一步:导入角色和背景

首先得做出背景,湍急的河流。

将准备好的声乐,舞台背景图片和角色添加到Scratch编程软件中,其中,舞台背景就一张图片,角色有鸭子,面包,垃圾……

图片[1]-Scratch小鸭子吃面包-51scratch少儿编程网
图片[2]-Scratch小鸭子吃面包-51scratch少儿编程网

第二步:给各个角色写代码

首先得设个全局变量取名为得分,来记录小鸭子的进食情况。

图片[3]-Scratch小鸭子吃面包-51scratch少儿编程网

然后是我们的小鸭子,小鸭子在河流下方等待着面包下路,用鼠标控制它左右移,所以首先给它初始化,然后为了避免被其它角色掩盖住,我们给他加上一个后移多少层的代码,值取大一点比较好,我这里取的100000。

图片[4]-Scratch小鸭子吃面包-51scratch少儿编程网

当绿色小旗子被点击时初始化小鸭子位置,初始化分数,并不断重复执行将小鸭子的x坐标设为鼠标x坐标,实现对小鸭子的控制,最后当游戏结束的背景音乐出来后隐藏小鸭子来显示结局。

最后来处理分数问题,吃一个面包加多少分,吃到垃圾扣多少分

图片[5]-Scratch小鸭子吃面包-51scratch少儿编程网
图片[6]-Scratch小鸭子吃面包-51scratch少儿编程网

经典的如果那么代码再用重复执行包起来

然后是面包:首先得让面包顺利滑下来,然后再考虑如何让面包从不同的位置滑下来以及以不同的速度滑下来,滑下来以后,如何处理小鸭子吃面包这个细节,如图:

图片[7]-Scratch小鸭子吃面包-51scratch少儿编程网

注意,面包初始值的x坐标可以和滑行结束时的x坐标一样也可以不一样,一样时看到面包滑的直线,不一样时看到的是面包斜着动,两者交替使用可以更真实

先让面包初始化到河流上游,然后再用取随机数代码实现面包不同速度的下滑,面包也不能一直下滑,得有个界限,我们不妨让这个界限就在小鸭子y坐标下面一点,这样能更直观的看到小鸭子漏了那个面包,所以在面包滑行完后加上隐藏,因为小鸭子不知道面包什么时候才顺流而下,最后再加上个等待随机秒,增强游戏的真实感。那么,如何来表现小鸭子吃面包的细节呢?我们平常在生活中不可能碰到食物,食物就消失进了自己的胃吧,通常要经过咀嚼才能进如我们的身体,所以,当面包碰到小鸭子时开始播放提前录入好的嘎嘎声(这个代码放在小鸭子那边也是一样的效果,只不过得把判断改为碰到面包)

图片[8]-Scratch小鸭子吃面包-51scratch少儿编程网

然后就是垃圾了:垃圾的移动和面包一模一样,直接复制粘贴就行,但是当小鸭子碰到垃圾时得发出不同的声音,类似于我们在碰到好吃的时候会多吃一点心情愉悦,碰到不好吃的东西时会少吃一点,这个时候就得把小鸭子吃面包时的声音改一下了

图片[9]-Scratch小鸭子吃面包-51scratch少儿编程网

到这一步,我们的游戏已经完成了一大半了,让我们再加把劲!

接下来就是时间的问题了:前面思路里面提到过,用一个圆盘来实现计时

想的很美好,那么如何来实现它呢?我们在看电影时应该看见过这种由圆盘表示时间,从一个完整的圆顺时针慢慢转,最后消失,这就需要很多个造型了

图片[10]-Scratch小鸭子吃面包-51scratch少儿编程网

如何根据一个完整的圆盘做出这么多的造型呢?这就需要我们进行造型编辑

先把造型变成位图,就像这样

图片[11]-Scratch小鸭子吃面包-51scratch少儿编程网

然后再选取工具栏里面右下角的“选择”,从圆盘的顶上对准圆心左下按住鼠标左键画出一个长方形

图片[12]-Scratch小鸭子吃面包-51scratch少儿编程网
图片[13]-Scratch小鸭子吃面包-51scratch少儿编程网

再点击转向按键,向右转适当角度

图片[14]-Scratch小鸭子吃面包-51scratch少儿编程网

再点击中心十字架进行微调

图片[15]-Scratch小鸭子吃面包-51scratch少儿编程网

这样就做好了一个“缺口圆”造型,就像这样多做几次,让他慢慢消失

接下来就是圆盘的代码了

图片[16]-Scratch小鸭子吃面包-51scratch少儿编程网

一开始将造型换成圆盘,我自己做了13个造型,所以一开始初始化用了一个,后面分别重复9 3次,当然,也可以直接重复12次,我这里把最后三个造型拿出来单独边是为了增加背景音乐,提醒小鸭子时间快到了,(这个time是为了方便自己理解代码的含义,看见time就知道这个是关于时间的代码,可以根据自己的需要更改time的值,我这里设置的是1,也就是每过1*60/12 也就是5秒 就换一个造型,来实现美观计时效果

最后的就是判断输赢的代码

图片[17]-Scratch小鸭子吃面包-51scratch少儿编程网

如果得分小于200分就播报失败的声音,反之则放成功的声音

最最后的是显示游戏胜利/失败

如果胜利就播报并显示你赢了,反之就播报并显示你输了(为了不一开始就显示结果,所以选择了隐藏,只有当相应的声音响起时才显示出来)

图片[18]-Scratch小鸭子吃面包-51scratch少儿编程网

这样,一个小鸭子吃面包的游戏就做好啦!

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享
狂饮开塞露的头像-51scratch
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容