国产日韩欧美一区二区三区综合,日本黄色免费在线,国产精品麻豆欧美日韩ww,色综合狠狠操

極客小將

您現(xiàn)在的位置是:首頁(yè) » scratch編程資訊

資訊內(nèi)容

scratch編程之貪吃蛇

極客小將2020-11-21-
導(dǎo)語(yǔ):貪吃蛇是經(jīng)典的游戲之一,從掌上游戲機(jī)到前段時(shí)間流行的貪吃蛇大戰(zhàn),這款游戲熱度未減。在制作貪吃蛇游戲中,我們需要理解“克隆體”的特點(diǎn),學(xué)會(huì)如何合理有效地使用“克隆體”。 貪吃蛇的游戲除去開(kāi)始動(dòng)畫(huà)、結(jié)束動(dòng)畫(huà)、分?jǐn)?shù)累計(jì)等環(huán)節(jié),最重要的是利用方向鍵控制蛇的移動(dòng)以及蛇身的變長(zhǎng)的實(shí)現(xiàn)。分解一下
導(dǎo)語(yǔ):貪吃蛇是經(jīng)典的游戲之一,從掌上游戲機(jī)到前段時(shí)間流行的貪吃蛇大戰(zhàn),這款游戲熱度未減。在制作貪吃蛇游戲中,我們需要理解“克隆體”的特點(diǎn),學(xué)會(huì)如何合理有效地使用“克隆體”。

貪吃蛇的游戲除去開(kāi)始動(dòng)畫(huà)、結(jié)束動(dòng)畫(huà)、分?jǐn)?shù)累計(jì)等環(huán)節(jié),最重要的是利用方向鍵控制蛇的移動(dòng)以及蛇身的變長(zhǎng)的實(shí)現(xiàn)。分解一下任務(wù),事情會(huì)變簡(jiǎn)單。

01控制移動(dòng)

對(duì)于控制單個(gè)角色的的移動(dòng)大家都不陌生,利用四個(gè)方向鍵作為觸發(fā)事件。所不同的是,貪吃蛇是持續(xù)移動(dòng),移動(dòng)的程序需要單獨(dú)寫出,方向鍵只負(fù)責(zé)控制角色運(yùn)動(dòng)的方向。這里,我們用角色庫(kù)中“ball”作為角色。程序如下圖:

upload/article/images/2020-11-21/d11433aa4cf6732ed9c284ce49607c10.jpg

02制作蛇身

如果運(yùn)行程序,我們會(huì)看到角色“ball”會(huì)受方向鍵控制,但這絕對(duì)不像一條蛇,其實(shí)就是一個(gè)球。這個(gè)球,我們可以看做是蛇頭。

蛇的身體哪里來(lái),這就不得不談到“克隆”了。

所謂“克隆”是指控制代碼當(dāng)中的一類積木。它的作用是復(fù)制角色本身或其他角色,被克隆的一般叫做“本體”,新角色被稱為“克隆體”。同時(shí),克隆體繼承本體在克隆那一刻所有特性,包括角色顏色、大小、方向、畫(huà)筆、特效等等。克隆體可以獨(dú)立編程、運(yùn)行。

執(zhí)行如下程序:

upload/article/images/2020-11-21/013e5b01d0cf718b3de6332ad1b3efc6.jpg

每秒復(fù)制一次克隆體,由于本體在不斷前進(jìn),克隆體會(huì)留在原地(即克隆發(fā)生是本體所在位置)形成蛇身。克隆體啟動(dòng)后,讓它切換造型,用來(lái)跟本體區(qū)分。

程序執(zhí)行效果如圖:

upload/article/images/2020-11-21/400e794f5f47d3fc0251881114772d08.jpg

蛇的造型完成了,由于克隆體在不斷復(fù)制,蛇身是無(wú)限延長(zhǎng)的。蛇身如果是固定長(zhǎng)度,它應(yīng)該是有限的克隆體。如果要蛇身持續(xù)移動(dòng),我們應(yīng)該刪除掉“尾巴”,即最先生成的克隆體。

程序如下:

upload/article/images/2020-11-21/5238759c2a10e4a05645f2ca40846b49.jpg

大家看到程序很簡(jiǎn)單,它巧妙地刪除掉了最先生成的克隆體,并使蛇產(chǎn)生了移動(dòng)的效果(注意克隆體是沒(méi)有發(fā)生移動(dòng)的)。請(qǐng)注意,刪除克隆體的等待時(shí)間,決定了蛇身的長(zhǎng)度。

到此,程序最困難的部分已經(jīng)完成,大家一定要好好理解一下克隆體的特點(diǎn)。

03吃了蘋果會(huì)變長(zhǎng)

首先我們需要新角色,選取角色庫(kù)中角色“apple”。蘋果的角色的效果類似于扎氣球游戲中的氣球。當(dāng)蛇碰到之后隱藏消失,并選擇新的位置出現(xiàn)。

編程如下:

upload/article/images/2020-11-21/b2e5103f0af83f1006d0101ea9013707.jpg

前文我們說(shuō)到,刪除克隆體的等待時(shí)間,決定了蛇身的長(zhǎng)度。我們添加一個(gè)變量“長(zhǎng)度”, 每吃到蘋果變量數(shù)值增加1。

程序在上面程序基礎(chǔ)上更改如下:

upload/article/images/2020-11-21/e260f54a9ad27555ebb911e82f6e3dff.jpg

角色“ball”程中序做如下修改:

upload/article/images/2020-11-21/eefaf277e25d9ca8db0edb32fe2a1098.jpg

想一想,為何變量“長(zhǎng)度”初始數(shù)值為3,還可以用其它方式完成嗎。

至此,貪吃蛇的程序就完成了。克隆效果可以有效重復(fù)單一動(dòng)作,省去制作新角色時(shí)間,在很多編程游戲中都有運(yùn)用。

當(dāng)然,這個(gè)作品有很大的改進(jìn)空間,對(duì)比自己之前接觸到的游戲,有沒(méi)有新的想法呢。歡迎大家溝通交流,一起成長(zhǎng)。

聲明:本文章由網(wǎng)友投稿作為教育分享用途,如有侵權(quán)原作者可通過(guò)郵件及時(shí)和我們聯(lián)系刪除

預(yù)約試聽(tīng)課

已有385人預(yù)約都是免費(fèi)的,你也試試吧...

主站蜘蛛池模板: 麻栗坡县| 开远市| 关岭| 靖边县| 融水| 石柱| 名山县| 永顺县| 德钦县| 柘荣县| 台中市| 景泰县| 延川县| 凤山县| 库伦旗| 汾阳市| 贺州市| 健康| 云林县| 宁晋县| 宽甸| 澜沧| 迭部县| 五台县| 鄂州市| 西昌市| 南充市| 凤城市| 宝应县| 马边| 苍南县| 民和| 黔江区| 临安市| 武清区| 湘阴县| 崇文区| 松江区| 和平区| 和田市| 桐城市|