[Scratch] 製作 打擊蝙蝠 – Strike the Bats 遊戲

[Scratch] 製作 打擊蝙蝠 – Strike the Bats 遊戲

已經有一陣子沒有碰 Scratch 了,

最近正好收到 Scratch 3.0 上線的通知,

於是就來重頭學習一次吧~

 

這是今天完成的一個小遊戲,名字叫「打擊蝙蝠 – Strike the Bats」,

顧名思義就是用球棒去打飛來飛去的蝙蝠~

靈感來源… 其實是在書店看完了 Scratch積木程式教室 這本好看的漫畫,

裡面做了一個控制飛龍移動與噴火,來攻擊幽靈的遊戲。

在 Scratch 內建的圖庫裡沒找到類似的素材,

就直接從內建圖庫裡,找出揮棒球員和蝙蝠來湊數囉~

 

簡單看一下畫面吧~大家也可以到 打擊蝙蝠 – Strike the Bats 的頁面去玩,

基本上就是蝙蝠會隨機出現,用方向鍵移動球員去接近蝙蝠:

 

按下空白鍵就能揮棒,沒打中的話蝙蝠會嘲笑你一下:

 

打中的話蝙蝠就會慘叫消失,之後再生出新的一隻出來:

 

要如何製作這個遊戲呢?

 

1. 用方向鍵移動球員

基本上就是在事件 (Event) 中,如果接收到方向鍵的事件,

就移動球員的 X 或 Y 座標值,相當簡單:

 

2. 按空白鍵揮動球棒

因為 Scratch 內建圖庫裡的這個球員,

本身是有好幾個不同的揮棒姿勢 (costume),

因此我們只要切換不同的 costume,中間加點延遲時間,

這樣就能看清楚揮棒動作了~

 

至於揮棒有沒有打中蝙蝠?

因為都是要由蝙蝠來做對應的動作,所以廣播 (broadcast) 一個 Strike 訊息,

再讓蝙蝠那邊接收訊息來處理。

 

3. 產生飛行中的蝙蝠

這個部分是我看 Scratch積木程式教室 這本書前還不會的,

用到了分身 (clone) 這個功能。

後來發現分身的功能非常重要,

在需要產生重覆、或是會生成再消失的角色時,

分身都能派上用場~

 

首先蝙蝠的本體在一開始先隱藏起來,

從本體建立一隻分身出來 (預設會在和本體相同位置):

 

當分身產生出來之後,設定隨機顏色 (好識別這是新的一隻蝙蝠),

同時把它移動到一個隨機的位置後再顯示出來。

接著,當分身產生出來之後,設定隨機顏色 (好識別這是新的一隻蝙蝠),

同時把它移動到一個隨機的位置後再顯示出來。

接著,持續讓它隨機往上下左右移動,

製造出一個牠在飛行的視覺效果:

 

這邊有多設定一個碰到邊緣後反彈 (if on edge, bounce),

這樣蝙蝠在隨機移動時,就不會飛出螢幕外了~

 

4. 偵測揮棒是否打擊成功

剛剛在步驟 2 中,球員揮棒時會廣播一個 Strike 的訊息,

於是我們就在蝙蝠這邊接收到這訊息時,

判斷蝙蝠和球員是否有接觸,有的話就當作打到了,

設定一些視覺效果表示被打到的樣子。

最後先產生一隻新的分身,再把現在這隻被打到的分身消滅掉。

 

新產生出來的分身就會適用步驟 3 的 when I start as a clone 事件,

自行設定顏色與出現的地點了~

 

要作出這個遊戲,最粗略的版本大約只要不到 20 分鐘就能完成,

但後來要調整一些細微處和視覺效果的話,

就要花不少時間 (1~2 個小時)~

不過可以完成一個遊戲,也學習到了分身的用法,

感覺還是挺不錯的,之後再來分享別的作品吧~^^

 

(本頁面已被瀏覽過 824 次)

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料