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

極客小將

您現在的位置是:首頁 » scratch編程資訊

資訊內容

scratch編程之貪吃蛇

極客小將2020-11-21-
導語:貪吃蛇是經典的游戲之一,從掌上游戲機到前段時間流行的貪吃蛇大戰,這款游戲熱度未減。在制作貪吃蛇游戲中,我們需要理解“克隆體”的特點,學會如何合理有效地使用“克隆體”。 貪吃蛇的游戲除去開始動畫、結束動畫、分數累計等環節,最重要的是利用方向鍵控制蛇的移動以及蛇身的變長的實現。分解一下
導語:貪吃蛇是經典的游戲之一,從掌上游戲機到前段時間流行的貪吃蛇大戰,這款游戲熱度未減。在制作貪吃蛇游戲中,我們需要理解“克隆體”的特點,學會如何合理有效地使用“克隆體”。

貪吃蛇的游戲除去開始動畫、結束動畫、分數累計等環節,最重要的是利用方向鍵控制蛇的移動以及蛇身的變長的實現。分解一下任務,事情會變簡單。

01控制移動

對于控制單個角色的的移動大家都不陌生,利用四個方向鍵作為觸發事件。所不同的是,貪吃蛇是持續移動,移動的程序需要單獨寫出,方向鍵只負責控制角色運動的方向。這里,我們用角色庫中“ball”作為角色。程序如下圖:

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

02制作蛇身

如果運行程序,我們會看到角色“ball”會受方向鍵控制,但這絕對不像一條蛇,其實就是一個球。這個球,我們可以看做是蛇頭。

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

所謂“克隆”是指控制代碼當中的一類積木。它的作用是復制角色本身或其他角色,被克隆的一般叫做“本體”,新角色被稱為“克隆體”。同時,克隆體繼承本體在克隆那一刻所有特性,包括角色顏色、大小、方向、畫筆、特效等等??寺◇w可以獨立編程、運行。

執行如下程序:

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

每秒復制一次克隆體,由于本體在不斷前進,克隆體會留在原地(即克隆發生是本體所在位置)形成蛇身??寺◇w啟動后,讓它切換造型,用來跟本體區分。

程序執行效果如圖:

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

蛇的造型完成了,由于克隆體在不斷復制,蛇身是無限延長的。蛇身如果是固定長度,它應該是有限的克隆體。如果要蛇身持續移動,我們應該刪除掉“尾巴”,即最先生成的克隆體。

程序如下:

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

大家看到程序很簡單,它巧妙地刪除掉了最先生成的克隆體,并使蛇產生了移動的效果(注意克隆體是沒有發生移動的)。請注意,刪除克隆體的等待時間,決定了蛇身的長度。

到此,程序最困難的部分已經完成,大家一定要好好理解一下克隆體的特點。

03吃了蘋果會變長

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

編程如下:

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

前文我們說到,刪除克隆體的等待時間,決定了蛇身的長度。我們添加一個變量“長度”, 每吃到蘋果變量數值增加1。

程序在上面程序基礎上更改如下:

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

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

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

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

至此,貪吃蛇的程序就完成了??寺⌒Ч梢杂行е貜蛦我粍幼?,省去制作新角色時間,在很多編程游戲中都有運用。

當然,這個作品有很大的改進空間,對比自己之前接觸到的游戲,有沒有新的想法呢。歡迎大家溝通交流,一起成長。

聲明:本文章由網友投稿作為教育分享用途,如有侵權原作者可通過郵件及時和我們聯系刪除

預約試聽課

已有385人預約都是免費的,你也試試吧...

主站蜘蛛池模板: 明星| 乌兰县| 太湖县| 盐山县| 汾阳市| 称多县| 迁安市| 鄄城县| 普格县| 定襄县| 松滋市| 东莞市| 隆安县| 资溪县| 安新县| 土默特右旗| 阳城县| 库车县| 海原县| 阳江市| 盘锦市| 马公市| 应城市| 宝坻区| 阳新县| 嘉祥县| 新绛县| 西和县| 镶黄旗| 贵港市| 曲麻莱县| 黑山县| 抚州市| 新化县| 沁阳市| 新竹市| 芒康县| 潮州市| 崇义县| 湖口县| 阿合奇县|