iT邦幫忙

2021 iThome 鐵人賽

0
自我挑戰組

Scratch 3 從入門到精通系列 第 32

Day32 ( 遊戲設計 ) 太空狗閃躲隕石

太空狗閃躲隕石

教學原文參考:太空狗閃躲隕石

這篇文章會介紹,如何在 Scratch 3 裡使用鍵盤偵測、角色移動、分身、重複無限次、邏輯、碰到分身...等積木,實作鍵盤控制角色移動閃躲隕石的小遊戲。

相關文章參考:鍵盤偵測角色移動重複無限次如果果...那麼

角色設定

在角色編輯區,刪除貓咪角色,加入「太空狗」角色 ( 參考:Scratch 角色設定 )。

Scratch 3 教學 - 閃躲隕石

另外一個角色,使用繪畫,繪製隕石的圖案 ( 參考:造型與繪圖 )。

Scratch 3 教學 - 閃躲隕石

完成後,在角色區域應該就能看到太空狗和隕石兩個角色。

Scratch 3 教學 - 閃躲隕石

再來將舞台背景更換成宇宙星空的背景,舞台上就能看到太空狗和隕石,出現在宇宙裡中。

Scratch 3 教學 - 閃躲隕石

積木程式原理 ( 太空狗 )

設定太空狗出現在舞台正中央 (0,0),並調整大小為 60%,接著參考 慣性移動 ( 鍵盤 ) 一文,將太空狗設定成可以用鍵盤控制上下左右,並具備「慣性移動」的特性 ( 放開鍵盤時逐漸減速 )。

Scratch 3 教學 - 閃躲隕石

點擊綠旗,就能用鍵盤操控太空狗,放開鍵盤時會有慣性地減速效果。

Scratch 3 教學 - 閃躲隕石

積木程式原理 ( 隕石 )

因為閃躲隕石的遊戲會不斷有隕石出現,所以使用重複無限次積木,每隔一秒建立一個隕石分身。

Scratch 3 教學 - 閃躲隕石

因為希望隕石都是從舞台的四個邊緣出現 ( 畫面中突然蹦出一個隕石是滿不合理的 ),所以使用一個 1~4 的隨機數,定義隕石出現位置,如果是 1,就設定 x 為 -220~220 的隨機數字,設定 y 為 -160,隕石就會從舞台下面出現,依此類推。

為了避免待會和偵測邊緣碰撞互相干擾,設定的數字比舞台座標還要小,例如舞台左側為 -240,隕石就設定 -220,舞台上緣為 180,隕石的 y 就設定 160。

Scratch 3 教學 - 閃躲隕石

使用「面朝...向」的積木,使隕石出現時,朝著太空狗的方向,接著使用重複無限次積木,讓隕石往太空狗方向移動,使用「如果...那麼」積木,判斷碰到邊緣或碰到太空狗的時候,就刪除分身

Scratch 3 教學 - 閃躲隕石

完成效果

完成後,點擊綠旗,就會看到隕石不斷出現,同時可以用鍵盤操控太空狗閃躲隕石。

Scratch 3 教學 - 閃躲隕石

最後在隕石的角色加入「被撞到」的變數,在碰到太空狗的時候,讓變數改變 1,就能計算被撞到幾次了。

注意,為什麼要加在「隕石」角色呢?因為如果將判斷程式加在太空狗,會因為「碰到太空狗」的時候隕石分身消失,造成沒有判斷碰撞的情形,所以將判斷放在隕石角色會比較簡單好處理。

Scratch 3 教學 - 閃躲隕石

範例解答

範例解答:閃躲隕石

延伸練習

如果已經熟悉了閃躲隕石的原理,還可以嘗試更多好玩的作法:

  • 改成碰到隕石,太空狗會扣血量,扣完了就會出現 Game Over 的背景。( 解答 )

    Scratch 3 教學 - 閃躲隕石

關於我

大家好,我是 OXXO,是個即將邁入中年的斜槓青年,如果對我有點興趣(笑,可以與我聯繫,一起來做點有玩又有創意的東西吧!


上一篇
Day31 ( 遊戲設計 ) 猴子接香蕉
下一篇
Day33 ( 遊戲設計 ) 拍西瓜 ( 儲存最高分 )
系列文
Scratch 3 從入門到精通46
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言