MOUSE CONTROL
滑鼠移到哪,猴子就跟到哪
上一堂課是「按一下方向鍵,角色移動一次」。這一堂改成讓電腦一直讀取滑鼠的位置,所以滑鼠移動時,角色也會立刻跟上。
每按一次,角色移動一次。
滑鼠移動,角色就跟著移動。
為什麼要「重複無限次」?
因為電腦只讀一次位置,猴子只會動一次。放進迴圈後,電腦才會一直更新滑鼠的位置。
CONTROL CHECK
先測試,再開始接香蕉
點綠旗,把滑鼠移到舞台的四個角落和正中央。觀察猴子有沒有跟上,也留意角色是不是跑出舞台。
- 點綠旗後,不用按方向鍵,猴子也能移動。
- 滑鼠停下來時,猴子也停下來。
- 如果只想左右移動,可改用「x 座標設為滑鼠的 x 座標」。
IF · THEN THINKING
判斷,就是先問問題再決定
「如果……那麼……」會先檢查一個條件。答案是「是」,就執行裡面的指令;答案是「不是」,就跳過,繼續往下做。
y 座標 < -170如果「是」→ 回到天空的隨機位置碰到 Monkey?如果「是」→ 回到天空的隨機位置BUILD THE BANANA RAIN
新增香蕉角色,完成兩個判斷
新增一個香蕉角色,並選取香蕉來寫程式。開場先把香蕉放到舞台上方的隨機位置,接著不斷下降;到底或被接到時,就重新回到上方。
由滑鼠操控,負責接香蕉。
程式要寫在香蕉角色裡。
隨機 x 讓每次落下的位置不同,y = 180 代表舞台上方。
y 每次減少 5;數字越小,香蕉的位置越下面。
到底或碰到猴子,都把香蕉送回上方,開始下一輪。
兩個「如果」要分開檢查
香蕉可能是掉到底,也可能是先被猴子接到。每一圈都檢查兩個問題,任何一個成立就回到上方。
TEST · FIND · FIX
像程式偵探一樣測試
不要只測一次。故意讓香蕉漏接,再成功接住香蕉,確認兩個「如果」都真的會執行。
香蕉掉到底部後,應該從上方另一個位置再次出現。
碰到猴子的瞬間,香蕉應該立刻回到上方。
香蕉會一直重來,不會停在底部,也不會消失。
- 為什麼香蕉的 y 座標要用負數,才會往下掉?
- 哪兩個條件成立時,香蕉會回到上方?
- 拿掉「重複無限次」後,程式會發生什麼事?
第五堂課挑戰完成!
我能用滑鼠控制角色,也能用「如果」判斷讓香蕉落下後重新開始。
設計你的第二種掉落物
複製香蕉角色,換成蘋果、星星或你喜歡的角色。調整「y 改變」的數字,讓它用不同速度掉落,但仍要用判斷回到上方。
GIFTED MISSION · FROG CROSSING
青蛙過四線道
幫助青蛙從下方人行道跳到對面。四條車道都有車子來回經過,青蛙碰到車子就回到起點,安全抵達上方人行道才算獲勝!
每按一次移動 30,不能一次飛過整條馬路。
判斷碰到任一輛車時,青蛙回到下方起點。
青蛙的 y 座標大於 150,就顯示過關訊息。
先讓四條車道動起來
建立 Car 1~Car 4 四個車子角色,每一台只在自己的車道左右移動。第 1、3 道往右,第 2、4 道往左;跑出舞台後,就從另一邊重新出現。
讓青蛙判斷危險與勝利
青蛙要一直檢查兩件事:有沒有碰到車?有沒有抵達終點?先把四個「碰到車子」用「或」連在一起,再放進如果判斷。
Car 1 或 Car 2 或 Car 3 或 Car 4定位回 x: 0 y: -160到達對面人行道說出「安全過馬路,我贏了!」- 四條車道都有車子,而且至少有兩種不同速度。
- 青蛙碰到任何車子,都會回到起點。
- 青蛙只有抵達對面人行道,才會顯示勝利訊息。