此遊戲無需背景
前景至少兩個角色
角色1:猴子,負責左右移動,檢查是否時間已到
角色2:香蕉,負責由上網下掉落,檢查是否碰到猴子(成功),或是碰到地板(失敗)
角色3:顯示訊息,若無此角色直接用說來表示也可以。
首先先完成簡單版
https://scratch.mit.edu/projects/295121377/
角色1的程式碼
猴子左右移動有一種簡單的方式就是 將x設定為鼠標的x
另外一種方式是用按鍵,向右按 x改變5,向左按x改變-5
主程式則是不斷的循環
角色2是香蕉有兩件事情要做
1. 從上往下掉
2. 檢查是否碰到猴子
這兩件事情可以同時,分別用重複迴圈進行
當y座標小於-170時,就碰到地板了,此時就算是漏接了。
進階版,計算漏接,如果漏接>4,遊戲結束,計算時間60秒,時間到也結束,結束後顯示分數,分數=吃到香蕉數*2-漏接
範例:https://scratch.mit.edu/projects/295167573/
即遊戲結束時可以得到如下的畫面
主角1增加了兩個全域的變數,漏接和時間
遊戲的結束條件改變成了「漏接>4」或「時間到」兩者之一,加上初始值得設定,改成如下:
角色2則比較不好改了,乍看之下,好像只要增加碰到邊緣就增加漏接的次數就好,事實上這樣的方式,同一次漏接往往會不斷的增加數字,所以增加了一個角色內變數loop去做判斷,程式碼變成如下:
y設為119是必要的,如果沒有這一積木,0.02秒內就會不斷地被計算碰到。
創作版: 試試看作如下的改變
1. 將角色2複製成很多個
2. 增加一個變數,計算目前顯示中的香蕉有幾個
3. 如果沒有任何一個,就不要等待1-3秒,而是直接出現。
4. 角色2改用分身,底下是使用分身的參考
5. 遊戲結束後可以重玩
6. 可以有下一關,掉落速度加快或是讓角色移動變慢
7. 可以有下一關,掉落不同的東西,但是碰到要扣分
沒有留言:
張貼留言