貪吃蛇很多平台都有的經典游戲,玩法是隨著時間或是吃果子後,身體會變長,玩家不但要能吃果子,還要操控角色避免撞到邊緣,還有避免撞到自己。
所以玩到後來因為蛇身越來越長,速度變快,難度越來越高,直到死亡為止。
此程式有點複雜,主要是由均一平台上的教學文件[1]來改良,變得更好玩。
學習重點及節數
迴圈、變數、分身、自訂積木、音效、計時器
6~8小時
說明
按下綠旗後,角色會不斷移動,要巧妙的操作以避免撞到邊緣和自己。
撞到自己或邊緣遊戲結束。
活得越久及吃的果子越多,分數越高。
隨著時間增加,分數會遞減,分數降為負值則死亡,所以必需不斷的吃果子補充。
遊戲畫面
隨著果子吃越多,速度變快
撞到自己的尾巴就死了
角色製作
有三個角色:蛇頭、果子和外框。
蛇頭
造型有幾個重點
1. 最好趨近圓形,以免轉向時來個甩尾,不要太大。
2. 方向朝右和轉向一致
3. 旋轉中心要對到中心點,如下圖角色的圓心對到灰色十字。
4. 可多繪製一個死亡的造型
果子
隨便畫
外框
遊戲的撞到邊緣判定是用是否部到外框物件來決定(也可以用邊界座標來判斷)。這樣的好處是可以做出華麗的邊框,讓遊戲更好玩。
在左上角放置分數和給玩家看的數值
程式--蛇頭
蛇頭的方向控制
出界的判斷
變數及初始化變數
有四個變數,在程式開始時初始其值
利用計時器隨時間扣分
為了妨止使用者一直不吃果子,隨時間分數遞減,分數小於0遊戲結束
角色死掉時的處理
設定一個死掉的廣播事件,當觸發死亡條件時,再廣播執行這個事件。
注意有特別將移動速度設為0
死掉時切換到「遊戲結束」背景然後用變數顯示結果
產生尾巴
利用分身來產生尾巴,加一個判斷移動速度,以免角色已經死了,但還是不停的產生分身。
碰到自己的尾巴死掉
選擇自己身體的主要顏色,例如粉紅
程式--果子
果子單純的碰到蛇頭換位置及計分,其中為了避免果子出現的位置掉到邊框處,多了一個迴圈處理
每吃5個果子速度增加
程式--外框
外框只需要定位開場位置及播放開場音效
完整積木
蛇頭
果子、外框
如上
程式下載
參考資料
[1] 均一 https://www.junyiacademy.org/computing/root/scratch-3-m01/v/ZN2PDoH7FUA