追逐遊戲

透過滑鼠與玩家互動,設計第一個具有挑戰性的遊戲。

本節重點

  1. 造型「造型換成下一個」
  2. 動作「滑行()秒到()位置」
  3. 動作「定位到()位置」
  4. 偵測「碰到()」
  5. 程式結構「並行(Concurrent)」、「如果()那麼()」
  6. 進階學習:使用「變數」計分

一、選擇具有多種造型的角色

選個角色,當滑鼠移至角色上方時,如具有多種造型的角色將以動態方式呈現。如下圖的熊,具有步行的造型。

二、兩個角色互相追逐

這是一個使用滑鼠的互動遊戲,玩家操控著其中一個角色,可以追逐或逃避另一個角色。如遭遇到天敵,「貓捉老鼠」或「老鼠躲貓」也可以。

提問一:如何讓角色跟著滑鼠移動?

引導思考:

  1. 「移動」應該在哪一類的積木中可以找到?
  2. 只移動一次還是重複不停的移動呢?
  3. 還缺少什麼積木可以讓程式一開始就執行?

以下四種方式都可以讓角色隨著滑鼠的位置移動。

提問二:如何知道角色碰在一起了?

引導思考:

  1. 如何知道角色之間彼此「碰撞」了?應該是哪一類的積木呢?
  2. 碰撞的結果是「有」或「沒有」兩種。
  3. 「碰到(角色)」的形狀很特別,找找看它可以和什麼類型的積木組合在一起。組合起來後,將他念出來(如果碰到角色那麼?)。
  4. 如果「碰到角色」之後,那麼該怎麼辦呢?驚訝地說出來看看吧!
  5. 該說多久呢?
  6. 偵測碰到是否需要重複不停偵測呢?

提問三:除了貓咪碰到老鼠,那麼老鼠碰到貓咪呢?

引導思考:

  1. 碰撞是兩個角色的互動,記得選擇碰到的「對象」。
  2. 貓咪碰老鼠,主角是「貓咪」;老鼠碰到貓咪,主角則是「老鼠」。

提問四:想想看,透過滑鼠移動角色,角色之間彼此碰撞,可以衍生出哪些遊戲呢?

  1. 瘋狂切水果
  2. 電流急急棒
  3. 打蟑螂
  4. 接水果
  5. Flappy Bird
  6. 足球PK射門
  7. 投籃機

三、碰到之後,該有什麼反應呢?

  1. 說話
  2. 改變造型
  3. 消失隱藏
  4. 遊戲結束

四、座標

透過移動角色,觀察座標上 X 與 Y 的數值變化。

  • 左右移動時,X 的數值會變大變小。
  • 上下移動時,Y 的數值會變大變小。

固定 Y 軸(高度)的數字,角色只能左右移動。

五、遊戲設計

本單元由此延伸遊戲的設計內容,碰撞到不同的角色會有不同的結果。如「足球PK射門」遊戲,主角是「守門員」,當「球」碰到守門員就會扣分。一開始有5分(5顆球),每碰到一次就扣1分。如果是0分,遊戲便結束了。