這款游戲的原型在這里 http://agar.io/?,因為是國外的游戲,經(jīng)常會卡到?jīng)]法玩,幸好老師找到一款相似度極高的國內(nèi)版本 http://www.jokebird.com/?,如果想了解更多關(guān)于游戲的信息,可以看下這篇知乎的文章,關(guān)于這款前世今生已經(jīng)講得非常清楚了https://www.zhihu.com/question/30121341
相信大家平時學業(yè)都非常的繁重,廢話不多說,直接進入主題吧
游戲的效果是這樣的
游戲規(guī)則是可以吃比自己小的球,躲開比自己大的球,以防被吃掉。當然游戲中還可以分裂,躲藏,發(fā)射小球,本教程里只講怎么實現(xiàn)游戲的基本功能。
首先我們要找到一張非常大的網(wǎng)格圖作為背景,這張看起來還不錯,尺寸是1280x960,足夠大了,需要的同學可以到老師的qq群文件里下載(Scratch創(chuàng)作與交流群號:223992592)
之后我們將這張背景作為一個角色來新增(注意,不是真的背景,實際上是一個角色)
大家看到了吧,添加進來后圖片就變的很小,僅僅能夠填充舞臺而已
那么怎么才能讓背景圖恢復原來的尺寸,讓我們有種在網(wǎng)格里游走,卻怎么也走不到邊的感覺呢?
下面老師就要教大家這個小技巧了,注意看哦
首先切換到“方格圖背景”的造型標簽,選第2個毛筆圖標新增一個“造型1”,保持空白就好,然后拖住“造型1”把它拉到第一個的位置。
然后,回到腳本區(qū),編寫如下腳本
下面該主角出場了,不過這個主角有點寒酸,需要我們用畫板繪制一個
記住畫圓的時候要按住鍵盤上的Shift鍵,可以畫出正圓來
接下來我們要讓背景動起來
老師你說錯了? 難道不是讓小球動起來嗎?
這款游戲還真不是讓小球移動,小明同學,我們再回到游戲中仔細觀察一下,是不是小球的位置始終保持在屏幕中心呢
所以我們對角色“”方格圖背景“”做了如下的操作
這里x和y坐標增加的值為什么是鼠標坐標*-0.01呢,首先小球是根據(jù)鼠標的移動而移動的,所以必須有鼠標的坐標作為參數(shù);為什么要乘以0.01呢,因為要讓速度降下來,不能太快;那為什么要加負號呢,因為要讓背景往相反的方向移動,我們才會感覺是小球在跟著鼠標跑。
同學們可以把這些參數(shù)修改一下,看看會是什么樣的效果,自己動手試試看
接下來我們再新增一個角色,也是一個小球,但是要比我們的黃色小球小,好讓我們把它吃掉
接下來我們需要“角色2”每隔3秒就克隆自己一次
接下來需要讓克隆體隨機出現(xiàn)在舞臺的任意位置
現(xiàn)在被克隆的小球還不會動,我們要讓它動起來,只需要把背景里控制移動的這部分代碼復制過來就可以了
大家注意看,始終有一個小球是跟隨黃色小球移動的(小球也有精神不正常的?。?,這個小球其實是克隆的本體,我們只需要把它隱藏即可
接下來,我們要做小球被吃掉的效果了
克隆的小球每次都是同一種顏色,我們讓它顏色隨機會不會很好看呢,我們加快速度來看下效果
主角小黃球到現(xiàn)在還沒有寫任何代碼呢,我們希望它在碰到其他小球時能夠按一定比例變大
實際上,變大的效果并沒有生效,這是為什么呢?
這是因為“角色2”的小球在碰到“角色1”時也會觸發(fā)一條指令,就是刪除本克隆體,以至于上面這段代碼還來得及被觸發(fā),克隆體已經(jīng)被刪除了,解決這個問題的辦法是在刪除克隆體之前加一個小小的等待即可
到此為止呢,這個游戲的基本功能就已經(jīng)完成了,趕緊動手自己做一個吧,看好你哦~~
過程中遇到什么問題都可以給我留言哦~