瘋狂搖搖樂是一個借用micro:bit加速計功能來玩的挑戰小遊戲:玩家必須快速搖晃micro:bit,讓畫面的光點填滿。遊戲一共有五關,越後面的關越難(要搖得更大力、更快才能用一樣的速度填滿光點)。
* * *
* * *
基本上,我們要用一個變數「搖晃分數」來記錄使用者搖到幾分(滿分150)。要增加分數的方式,便取決於加速計衡量到的值(加速度感測值-強度)。
我們在「當啟動時」把加速度計的上限設為8G重力,但實際上在這個設定下,加速度計最多可測到13000mg(13G)左右。最低差不多是1000mg(1G),因為有地球重力嘛。因此我們把讀取到的值限制在1000~12000,並把它轉換為介於0到「加分上限」(一開始是27)之間的值。也就是說,如果搖到12G,搖晃分數一次可增加最多27。
但在下一行,搖晃分數也會不斷減5。因為如果沒有減分,使用者幾乎不用做什麼就能輕鬆搖到滿分。有了減分機制,玩家只要一停止搖晃micro:bit,分數就會慢慢減回0了!(再下面會避免分數真的減到低於0。)
如果分數加到超過150,代表成功過關,分數會被重設,加分上限也會減少3,好提高下次加分的難度。若第5關過了,就會進入無窮迴圈,代表遊戲結束,並顯示玩家過5關所費的總秒數。
我們在「當啟動時」把加速度計的上限設為8G重力,但實際上在這個設定下,加速度計最多可測到13000mg(13G)左右。最低差不多是1000mg(1G),因為有地球重力嘛。因此我們把讀取到的值限制在1000~12000,並把它轉換為介於0到「加分上限」(一開始是27)之間的值。也就是說,如果搖到12G,搖晃分數一次可增加最多27。
但在下一行,搖晃分數也會不斷減5。因為如果沒有減分,使用者幾乎不用做什麼就能輕鬆搖到滿分。有了減分機制,玩家只要一停止搖晃micro:bit,分數就會慢慢減回0了!(再下面會避免分數真的減到低於0。)
如果分數加到超過150,代表成功過關,分數會被重設,加分上限也會減少3,好提高下次加分的難度。若第5關過了,就會進入無窮迴圈,代表遊戲結束,並顯示玩家過5關所費的總秒數。
點圖可放大 |
由於模擬器無法模擬這麼大的搖晃效果,因此就不放了。
沒有留言:
張貼留言