如何用Scratch制作一款Agar.io游戏细胞大作战技巧分享

这款游戏的原型在这里 http://agar.io/ ,因为是国外的游戏,经常会卡到没法玩,幸好老师找到一款相似度极高的国内版本 http://www.jokebird.com/ ,如果想了解更多关于游戏的信息,可以看下这篇知乎的文章,关于这款前世今生已经讲得非常清楚了https://www.zhihu.com/question/30121341

相信大家平时学业都非常的繁重,废话不多说,直接进入主题吧

游戏的效果是这样的

游戏规则是可以吃比自己小的球,躲开比自己大的球,以防被吃掉。当然游戏中还可以分裂,躲藏,发射小球,本教程里只讲怎么实现游戏的基本功能。

首先我们要找到一张非常大的网格图作为背景,这张看起来还不错,尺寸是1280x960,足够大了,需要的同学可以到老师的qq群文件里下载(Scratch创作与交流群号:223992592)

如何用Scratch制作一款Agar.io游戏细胞大作战技巧分享_第1张图片

之后我们将这张背景作为一个角色来新增(注意,不是真的背景,实际上是一个角色)

大家看到了吧,添加进来后图片就变的很小,仅仅能够填充舞台而已

那么怎么才能让背景图恢复原来的尺寸,让我们有种在网格里游走,却怎么也走不到边的感觉呢?

下面老师就要教大家这个小技巧了,注意看哦

首先切换到“方格图背景”的造型标签,选第2个毛笔图标新增一个“造型1”,保持空白就好,然后拖住“造型1”把它拉到第一个的位置。

然后,回到脚本区,编写如下脚本

如何用Scratch制作一款Agar.io游戏细胞大作战技巧分享_第2张图片

下面该主角出场了,不过这个主角有点寒酸,需要我们用画板绘制一个

记住画圆的时候要按住键盘上的Shift键,可以画出正圆来

接下来我们要让背景动起来

老师你说错了? 难道不是让小球动起来吗?

这款游戏还真不是让小球移动,小明同学,我们再回到游戏中仔细观察一下,是不是小球的位置始终保持在屏幕中心呢

所以我们对角色“”方格图背景“”做了如下的操作

如何用Scratch制作一款Agar.io游戏细胞大作战技巧分享_第3张图片

这里x和y坐标增加的值为什么是鼠标坐标*-0.01呢,首先小球是根据鼠标的移动而移动的,所以必须有鼠标的坐标作为参数;为什么要乘以0.01呢,因为要让速度降下来,不能太快;那为什么要加负号呢,因为要让背景往相反的方向移动,我们才会感觉是小球在跟着鼠标跑。

同学们可以把这些参数修改一下,看看会是什么样的效果,自己动手试试看

接下来我们再新增一个角色,也是一个小球,但是要比我们的黄色小球小,好让我们把它吃掉

接下来我们需要“角色2”每隔3秒就克隆自己一次

如何用Scratch制作一款Agar.io游戏细胞大作战技巧分享_第4张图片

接下来需要让克隆体随机出现在舞台的任意位置

如何用Scratch制作一款Agar.io游戏细胞大作战技巧分享_第5张图片

现在被克隆的小球还不会动,我们要让它动起来,只需要把背景里控制移动的这部分代码复制过来就可以了

如何用Scratch制作一款Agar.io游戏细胞大作战技巧分享_第6张图片

大家注意看,始终有一个小球是跟随黄色小球移动的(小球也有精神不正常的啊),这个小球其实是克隆的本体,我们只需要把它隐藏即可

接下来,我们要做小球被吃掉的效果了

如何用Scratch制作一款Agar.io游戏细胞大作战技巧分享_第7张图片

克隆的小球每次都是同一种颜色,我们让它颜色随机会不会很好看呢,我们加快速度来看下效果

如何用Scratch制作一款Agar.io游戏细胞大作战技巧分享_第8张图片

主角小黄球到现在还没有写任何代码呢,我们希望它在碰到其他小球时能够按一定比例变大

如何用Scratch制作一款Agar.io游戏细胞大作战技巧分享_第9张图片

实际上,变大的效果并没有生效,这是为什么呢?

这是因为“角色2”的小球在碰到“角色1”时也会触发一条指令,就是删除本克隆体,以至于上面这段代码还来得及被触发,克隆体已经被删除了,解决这个问题的办法是在删除克隆体之前加一个小小的等待即可

到此为止呢,这个游戏的基本功能就已经完成了,赶紧动手自己做一个吧,看好你哦~~

过程中遇到什么问题都可以给我留言哦~

你可能感兴趣的:(如何用Scratch制作一款Agar.io游戏细胞大作战技巧分享)