{{ 'fb_in_app_browser_popup.desc' | translate }} {{ 'fb_in_app_browser_popup.copy_link' | translate }}

{{ 'in_app_browser_popup.desc' | translate }}

目錄 購物車 {{currentCart.getItemCount()}}
商品總數的上限為 100 件,請調整數量再點擊購買

oplate App 分享區

 

銀髮樂活  /  職能治療  /  運動健身  /  程式教育  /  app客製化

 

程式教育 > 專題 > 專題03

專題簡介

這個專題我們要做的是小黑盤和手機之間的互動。
手機在我們的遊戲中通常只做為操作介面的角色,但其實也是可以一起互動的,專題03就做了一個類似賽車的遊戲。
小黑盤作為方向盤操控紅色點點閃過迎面而來的黑點,如果將手機畫面投影到大螢幕會更有趣喔。

需要的小黑盤數量和應用的元件:
1.  小黑盤數: 1
2.  元件應用: LED、蜂鳴器、G-Sensor

 

專題內容

1.  專題下載 Projects03(.aia檔)

 

2.  遊戲開始後,會有小黑點從不同地方落下,速度時快時慢。
     玩家藉著轉動小黑盤控制小紅點閃過落下的小黑點,被碰到3次遊戲就結束囉。
     請看以下示範影片。

3.  我們開個新專案,名稱為「Projects03」,App名稱為「專題03」。
     在「畫面編排」中,我們先放進顯示標題的「標籤」、一個連線用的「清單」、開始「按鈕」、一個「BLE擴充元件」和一個「計時器」。
     「計時間隔」設為300。
     然後從左方「元件面板」中的「繪圖動畫」裡將「畫布」拉進來,高度500像素、寬度300像素。

4.  再加進兩個「球形精靈」。
     「球形精靈1」是要落下的小黑點,「球形精靈2」是玩家控制的小紅點。
     分別的元件屬性和初始的位置如圖。
     注意「指向」是指「球形精靈」移動的方向,270是往下。

5.  進到「程式設計」,連線的部分和之前一樣。
     「按鈕」開始的部分:
     1. 首先要確定已經連線才會執行以下的動作。
     2. 讓「球形精靈2」的顏色和位置、小黑盤燈光的顏色和變數「碰撞次數」回到初始值。
         然後呼叫程序「開始」。

6.  程序「開始」是「球形精靈1」出發的動作設定,內容包括:
     1. 隨機決定「球形精靈1」X方向的位置。
         畫面的寬度為300,「球形精靈1」的位置由左上角的位置來代表,然後大小是直徑40的球,所以當「球形精靈1」在X方向的位置是260時,球的邊邊剛好在畫面的邊緣,再多就會超過畫面了。
     2. 隨機決定「球形精靈1」的速度。
         數值越大速度越快。因為「球形精靈1」的「指向」是270,所以這裡會決定往下的速度。
     3. 將「球形精靈1」移到出發位置。
         出發位置的X方向是隨機的,但Y方向都是0,就是都從畫面最上方開始。
     4. 設定「球形精靈1」的速度。
         將隨機決定的速度設定為「球形精靈1」的速度。
     5. 讓「球形精靈1」出現。

7.  「球形精靈1」落下後會有兩種情況,一個是碰到邊界(畫布的四個邊界,但因為「球形精靈1」是落下的方向,所以只會碰到畫面底下的邊界),另一個是碰到「球形精靈2」。

     在碰到底下邊界時的情況:
     1. 讓「球形精靈1」速度變0並且消失。
     2. 如果「碰撞次數」還沒到3次,就要呼叫程序「開始」讓遊戲繼續。

8.  在碰到「球形精靈2」的情況:
     1. 變數「燈號」是小黑盤顯示2/3紅、1/3紅和關的燈號數值。
         遊戲開始時小黑盤燈號是全紅,當「球形精靈2」被「球形精靈1」碰到1次,燈號會變成2/3紅,依序碰到3次時,小黑盤燈光全關遊戲結束。
     2. 在碰到「球形精靈2」時,「球形精靈1」也是速度變0並且消失。
     3. 每次碰到,「碰撞次數」都會加1。
         並且發出命令讓小黑盤顯示相對應的燈號。
     4. 如果「碰撞次數」還沒到3次,就要呼叫程序「開始」讓遊戲繼續。
         如果「碰撞次數」到3次了,讓「球形精靈2」變成灰色並發出結束音效的命令。
     5. 只要碰到「球形精靈2」,都要發出震動的命令,並啟用「計時器1」。

9.  啟用「計時器1」後0.3秒,會發出關掉震動和聲音的命令。

10.  接下來要製作透過轉動小黑盤來控制「球形精靈2」移動的程式方塊。

       這裡我們會需要用到Gx值,還記得怎麼得到Gx值嗎?忘記就快點複習一下基礎課程的Lesson09吧。

       小黑盤向左轉,當Gx值大於0.4的時候,讓「球形精靈2」往左移動10。
       因為小黑盤大約0.01秒會傳一次資料,所以「當”Bluetooth1”.StringsReceived」這個程式方塊會每0.01秒執行一次內含程式方塊的動作。
       因此保持Gx值大於0.4時,差不多0.1秒「球形精靈2」就會到最左邊了,如果想要移動慢點,可以減少移動的數值,變成5之類的。

       往右轉也是相同模式。

11.  以上就是我們專題3的內容說明。
       大家可以讓多個黑點同時落下或是增加一個小黑盤變成雙人遊戲,會更加刺激喔!