應(yīng)該每個人都會記得曾經(jīng)與舊款諾基亞手機(jī)一起玩過的貪吃蛇的游戲吧子姜!這個以微軟5×5分辨率顯示的微型版本很容易制作并且很有趣!
目標(biāo)
在這一步一步的指導(dǎo)下漱贱,我們將從頭開始構(gòu)建一個蛇形游戲治笨,處理控制砌们,移動,贏得和失去條件催烘,以及游戲板的繪制沥阱。
物料
1 x BBC micro:bit
1個Micro USB電纜
1x耐心(編碼應(yīng)該大約需要30分鐘)
為什么是Python?
像英語一樣閱讀 - Python是最簡單的閱讀語言之一伊群,這使得它成為一種非常棒的初學(xué)者語言考杉。
多功能 - Python是行業(yè)標(biāo)準(zhǔn),理由很充分舰始。它可以用來做這么多崇棠。這就是Google和YouTube為其后端軟件的一部分使用該語言的原因。
活躍的社區(qū) - Python是初學(xué)者最流行的語言之一丸卷。有大量的資源枕稀,并且愿意幫助您查看代碼,這對于幫助您克服編程過程中的絆腳石非常重要谜嫉。
實際編碼看起來比基于塊的拖放編碼要冷萎坷。我知道這很嚇人,但看看這些顏色沐兰!
如何
在Python中開始編碼哆档?
如果你是編程初學(xué)者,你可能沒有放置Python住闯。別擔(dān)心瓜浸!只需進(jìn)入官方的micro:bit Python編輯器或下載離線Python編輯器mu來編寫代碼并將其發(fā)送到您的micro:bit。你也可以使用自己的文本編輯器(Sublime 3和Atom)比原,但你必須將它閃爍到微位:斟叼。這可能會變得相當(dāng)麻煩〈菏伲或者朗涩,您可以使用micro:bit模擬器,這對于測試代碼非常有用绑改,而無需每次下載.hex文件谢床,并且可以更輕松地修復(fù)錯誤兄一。
一旦安裝完畢,使用micro-USB電纜將micro:bit連接到電腦识腿。它應(yīng)該連接到micro:bit背面頂部的端口出革。一旦準(zhǔn)備好閃光,micro:bit應(yīng)該亮起明亮的黃色渡讼。如果您在模擬器上骂束,請忽略此步驟。
制作
貪吃蛇的六個簡單步驟成箫!
通過將代碼分成不同的部分展箱,游戲的每個方面都可以單獨進(jìn)行測試,以確保它們都能正常運行蹬昌。
1.進(jìn)口圖書館
2.初始化變量
3.創(chuàng)建主循環(huán)
4.顯示蛇和食物
5.移動蛇每一幀
6.設(shè)定勝利和比賽條件
通過不斷檢查代碼混驰,我們可以確定到目前為止所寫的內(nèi)容是否正確。
第1步
- 導(dǎo)入該項目的所有必要庫皂贩。
由于該項目非常簡單栖榨,我們只需要默認(rèn)的micro:bit庫和稱為randint的漂亮函數(shù)即可生成我們需要的隨機(jī)數(shù)。
第2步
- 初始化所有我們稍后需要的變量明刷。
棋盤上的一個點由列表[x婴栽,y]表示,其中x表示列辈末,y表示行居夹。蛇是這些點的列表(是的,列表的列表1境濉)准脂,因為它包含多個點。它從屏幕左上角的單個像素開始檬洞,用[0,0]表示狸膏。之后,更多的點將被附加到列表中添怔。食物是一個單獨的像素湾戳,隨機(jī)定位在其他地方(不在同一行或列中)。
每個方向都由一個列表來表示广料,該列表包含列中的增加/減少或行中的增加/減少(本質(zhì)上是一個向量)砾脑。例如,右表示為[1,0] - 列增加1艾杏,行不增加韧衣。蛇在默認(rèn)情況下向右移動,這是方向列表中的第一個選項。為了讓蛇向左轉(zhuǎn)畅铭,我們只需轉(zhuǎn)到列表中的下一個方向(右 - >上 - >左 - >下 - >右)氏淑。為了讓蛇向右轉(zhuǎn),我們轉(zhuǎn)到列表中的上一個方向硕噩。
第3步
- 創(chuàng)建主循環(huán)假残。
循環(huán)內(nèi)的代碼重復(fù)無數(shù)次,或直到循環(huán)被破壞炉擅。請記住辉懒,這是Python,所有后續(xù)的行都必須縮進(jìn)谍失。
第4步
- 顯示蛇和食物眶俩。
首先,我們清除之前繪制的任何東西的畫面袱贮,以便我們從空白的石板開始。接下來体啰,我們將食物粒子作為明亮的光線在顯示器上繪制攒巍。之后,我們遍歷蛇列表并繪制中等亮度的每個像素荒勇。然后柒莉,程序暫停0.8秒,然后再次重畫屏幕沽翔。
運行
代碼兢孝!
經(jīng)常檢查所有事情是否應(yīng)該如此是非常重要的。此時仅偎,電路板上應(yīng)該有兩個像素點亮跨蟹。按下重置按鈕,食物粒子將移動到不同的位置橘沥。
第5步
- 移動蛇并找出接下來會發(fā)生什么窗轩。
整個代碼應(yīng)該放在先前顯示代碼的頂部。 (請參閱完整的代碼以供參考)座咆。 第一行決定蛇將移動到的下一個像素痢艺。 根據(jù)蛇頭的當(dāng)前位置并添加方向(按行和列),我們可以找到下一個像素介陶。 通過獲得模5堤舒,我們可以將蛇包裹在th的邊緣