1. 程式人生 > >Scratch 遊戲程式設計(二):飛鳥闖關

Scratch 遊戲程式設計(二):飛鳥闖關

原文: https://www.kidscoding8.com/19188.html
幾年前智慧手機沒有出來時這款小遊戲就火起來了,小編也特變喜歡呢,哈哈不小心暴露年齡了。。。。一直到現在還有很多人在玩。

Scratch 創意程式設計(二):飛鳥闖關

遊戲方式非常簡單:

玩家控制一隻小鳥,躲避柱形障礙物,穿過一個障礙物加一分,一旦碰到障礙物結束。遊戲的樂趣就在於玩家們互相之間不斷的攀比得分。

今天的Scratch案例我們就來實現這樣一個經典的遊戲。

Scratch 創意程式設計(二):飛鳥闖關

遊戲製作步驟:

  1. 進入Scratch程式設計軟體。

  2. 刪除角色。彈球遊戲中沒有小貓角色,右鍵單擊小貓角色,刪除。(嗚嗚,為什麼每次刪除的都是我。。。)

  3. 新建角色——從角色庫中選取“動物”中的“Parrot”角色

Scratch 創意程式設計(二):飛鳥闖關

  1. 編寫小鳥指令碼1——改變小鳥的大小

Scratch 創意程式設計(二):飛鳥闖關

  1. 編寫小鳥指令碼2——小鳥初始出現的位置

小鳥一直在舞臺偏左的位置上下運動。初始位置可以通過滑鼠拖動,調整到合適位置。

Scratch 創意程式設計(二):飛鳥闖關

  1. 編寫小鳥指令碼3——小鳥的上下運動

Flappy bird遊戲中小鳥的運動方式是,當玩家每觸控一次螢幕時,小鳥向上飛行一段距離,當玩家不觸控式螢幕幕或手指一直不離開螢幕,小鳥都會自動的向下飛行。

Scratch目前並不支援觸控式螢幕,所以本遊戲的操控改為空格鍵操作。

先實現小鳥的自動下落:

Scratch 創意程式設計(二):飛鳥闖關

此時會發現,小鳥的頭是朝下的:

Scratch 創意程式設計(二):飛鳥闖關

讓小鳥的頭始終朝右,有兩種方法:

方法一:修改角色資訊的“旋轉模式”

Scratch 創意程式設計(二):飛鳥闖關

方法二:使用修改角色座標的方式,移動角色。

Scratch 創意程式設計(二):飛鳥闖關

Scratch 創意程式設計(二):飛鳥闖關

方法二能直接在指令碼中看到,可讀性更佳,推薦。

小鳥自動下落的速度設定為 -6 比較合適。

接下來編寫當按下空格鍵時,小鳥向上運動的程式。

因為小鳥自動下落的指令碼也會反覆執行,所以要實現按下空格鍵時,小鳥能向上運動,必須Y座標增加的值的和為正。

Scratch 創意程式設計(二):飛鳥闖關

Scratch 創意程式設計(二):飛鳥闖關

  1. 新建柱形障礙物角色——從角色庫中選取“物品”中的“Paddle”角色

Scratch 創意程式設計(二):飛鳥闖關

  1. 編寫障礙物指令碼1——改變障礙物大小

這類指令碼大家都很熟悉了,不多說。

Scratch 創意程式設計(二):飛鳥闖關

  1. 編寫障礙物指令碼2——障礙物的運動

障礙物是呈豎直狀態的,所以首先要轉動90度。開啟角色資訊發現其“旋轉模式”是第三種,需先改成第一種。

Scratch 創意程式設計(二):飛鳥闖關

障礙物最初處在舞臺最右邊,所以X座標為240,Y座標為一定範圍內的隨機值(160~260)。

Scratch 創意程式設計(二):飛鳥闖關

障礙物持續按一定速度往左移動,移到左邊緣時隱藏,重新移動回最右邊,顯示,如此往復。

Scratch 創意程式設計(二):飛鳥闖關

這裡不用障礙物“碰到邊緣”為條件觸發隱藏,因為障礙物一直都是貼著邊緣的,所以用障礙物的X座標為條件來判斷是否到達舞臺的最左邊。

接下來,製作下半部分的障礙物。可以通過再新建一個障礙物角色實現,也可以用克隆的方式實現,本例中用克隆方式製作。

Scratch 創意程式設計(二):飛鳥闖關

Scratch 創意程式設計(二):飛鳥闖關

Scratch 創意程式設計(二):飛鳥闖關

  1. 編寫障礙物指令碼3——得分判定

可以利用障礙物觸碰舞臺最左邊來進行得分判定。

Scratch 創意程式設計(二):飛鳥闖關

  1. 編寫小鳥指令碼4——扇翅膀效果

小鳥向上運動時,切換為另一個造型,可製作出扇翅膀效果

Scratch 創意程式設計(二):飛鳥闖關

Scratch 創意程式設計(二):飛鳥闖關

  1. 編寫小鳥指令碼5——死亡判定

小鳥碰到障礙物時,說“GAME OVER!”,頭朝下跌落,然後停止全部。

Scratch 創意程式設計(二):飛鳥闖關

Scratch 創意程式設計(二):飛鳥闖關

至此,這款小遊戲基本編寫完啦,我們還可以設定不同難度的等級,有興趣的夥伴們可以一起探討哦。