別讓孩子因為「教育」而被淘汰 【Scratch】 去背教學

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

 

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

運用Arduino擴充版上的滑桿,

並用S4A,

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

 

趕快來動手做做看吧!

 

(贊助商連結)

 

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

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

滑桿移到最右邊時,

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

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

 

 

 

功能分析:

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

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

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

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

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

 

遊戲會在磚塊全打完,

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

 

如圖示。

 

 

創造角色

我們一共需要九個角色,

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

一顆球、

一個擋板、

六塊積木。

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

https://goo.gl/tTQYHA

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

 

 

點一下,然後選擇下載。

 

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

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

點選【開啟角色檔案】。

 

 

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

 

 

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

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

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

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

 

 

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

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

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

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

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

 

 

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

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

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

 

首先我們先點選Arduino角色。

 

 

當綠旗被點選的時候,

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

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

 

之後不斷重複執行,

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

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

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

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

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

 

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

遊戲就結束囉!

 

 

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

我們先讓球轉15度,

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

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

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

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

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

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

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

 

 

擋板的設定很簡單,

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

 

 

現在我們來排磚塊,

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

就是X軸的水平位置。

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

當球碰到磚塊時,

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

 

 

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

 

 

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

 

 

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

 

 

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

 

 

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

 

 

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

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

 

 

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

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

 

喜歡我們的 文章嗎 ?

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

 

 

 

 

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

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

 

好文章 分享給好朋友吧~

 

熱門文章排行

    最新文章分享

      熱門標籤

      熱門作者

      文章分類