【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

CMaker程式教育團隊

CMaker程式教育團隊

  • 2015-10-19 15:55
  • 更新:2015-10-19 17:54

 

本篇要教大家寫一個簡單的打磚塊遊戲。

運用Arduino擴充版上的滑桿,

並用S4A,

就可以寫出這個小遊戲囉!

 

趕快來動手做做看吧!

 

(贊助商連結)

 

首先來介紹滑桿,下圖紅框圈起處就是滑桿,

對應到S4A的是類比訊號A0。

滑桿移到最右邊時,

A0會顯示為255,最左為0。

藉由左右移動,我們要用滑桿控制螢幕中的擋板來玩打磚塊~

 

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

 

功能分析:

遊戲開始後(點選綠色旗子),

球會開始移動,當球碰到上面的磚塊,

磚塊就會消失。球往下掉落時,

我們要用擋板把它擋回去,

若沒擋好,球會掉落,機會就會少一次。

 

遊戲會在磚塊全打完,

或者機會全用的時後結束。

 

如圖示。

 

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

創造角色

我們一共需要九個角色,

Arduino1(一開始出現在畫面裡的)、

一顆球、

一個擋板、

六塊積木。

大家可以到底下的連結下載角色Sprite的檔案:

https://goo.gl/tTQYHA

點進去後,有四個檔案,逐一下載到自己指定的位置。

 

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

點一下,然後選擇下載。

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

若怕找不到,可以存至桌面。

之後回到S4A裡面,右上角的螢幕底下,

點選【開啟角色檔案】。

 

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

找到剛剛下載的角色,點選後新增角色。

 

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

現在我們已經有球、檔板、界線跟磚塊。

但我們只有一個磚塊,所以要多複製幾個。

轉到磚頭後,點滑鼠右鍵,然後選擇【複製】。

我們一共需要六塊磚頭,所以請複製五遍。

 

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

角色都搞定後,我們現在要先來設定三個變數,

分別為【剩餘機會】、【滑桿位置】、【積木數量】。

先選擇【變數】積木,點選產生一個變數。

變數名稱輸入【剩餘機會】,並點選確定新的變數就會產生囉!

同樣的步驟,我們再把【滑桿位置】、【積木數量】做出來。

 

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

變數也搞定後,現在要來用積木寫程式囉!

這時後應該要有六塊磚塊,先不用調整位置沒關係,

等一下我們都會設定好位置。

 

首先我們先點選Arduino角色。

 

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

當綠旗被點選的時候,

我們先隱藏畫面中Arduino的板子圖示,

並把【積木數量】初始的值設為6、【剩餘機會】設為3。

 

之後不斷重複執行,

讓畫面中檔板的位置對應到我們motorduino擴充板的滑桿上。

意思就是,當我們點下綠旗後,只要移動擴充板的滑桿,

畫面中的檔板的位置就會一起跟著改變喔!

中間綠色的算式是幫大家設計好的,

大家可以想想看為甚麼要這樣設計喔!

 

最後,如果剩餘機會沒了(等於0),或者上頭的磚塊全被打掉,

遊戲就結束囉!

 

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

緊接著我們來設計【球】。

我們先讓球轉15度,

然後讓球不斷朝前進,只要碰到邊緣就會反彈。

若行進中碰到檔板,就會整個面像反方向(方向-180度),

並旋轉-20到20中間,不等的度數,然後繼續前進。

或者今天我們沒有用檔板擋到球,

球碰到底下的界線出界了,

那我們就讓球會到中央(X=0, Y=0),

機會減一,然後等待一妙後重新開始。

 

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

擋板的設定很簡單,

就是水平X座標會不斷地隨著擴充板上的滑桿移動而改變位置。

 

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

現在我們來排磚塊,

每塊磚塊的差別只有一個小地方,

就是X軸的水平位置。

第一塊的X跟Y請設置為X:-200、Y:165。

當球碰到磚塊時,

我們就隱藏該磚塊,並且把變數磚塊數量-1。

 

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

第二塊的X跟Y請設置為X:-120、Y:165。

 

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

第三塊的X跟Y請設置為X:-40、Y:165。

 

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

第四塊的X跟Y請設置為X:40、Y:165。

 

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

第五塊的X跟Y請設置為X:120、Y:165。

 

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

最後一塊的X跟Y請設置為X:200、Y:165。

 

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

最後最後,我們來設一條界線,一但碰到它就是出界,

當我們點綠色旗子開始的時後,我們把它移到X:0 Y:-170的位置上。

 

【小小工程師-程式體驗營】S4A小遊戲- 打磚塊

 

點一下綠色旗子,所有東西都會到定位喔!

好了,現在趕快連線,來玩打磚塊吧~

 

喜歡我們的 文章嗎 ?

歡迎關注我們的粉絲團唷→ 親子Fun程式

 

 

 

 

若無法配合附上以上資訊,請勿轉載文章。​謝謝~

(本文為CMaker專欄作者編寫 ,  歡迎轉載,請同時附上CMoney本站完整名稱與網址。)

 

好文章 分享給好朋友吧~

 

CMaker程式教育團隊

CMaker程式教育團隊

CMoney程式教育團隊