第8堂課:全域變數

使用變數可以記錄遊戲的狀態。Scratch提供兩種不同的變數型態,一個是全域變數,適用於所有角色,一個是角色變數,只適用於某角色。

如何新增變數

在指令區中,選取「變數」類別的積木。按下「產生一個變數」來新增變數。在新增變數時,你必須先決定它的名稱,然後再決定它是屬於全域變數,或是角色變數。

_images/009_001.png

當你新增完變數後,在指令區就會有5個變數的積木可以使用。

_images/009_002.png

全域變數

全域變數是所有角色都可以使用的變數,例如:我們要計算遊戲的得分,最好設為全域變數,這樣地話,在所有角色中都能改變遊戲的得分。

教學影片

遊戲案例:猴子吃香蕉

遊戲方法:按下綠旗開始執行程式,猴子會跟著你的滑鼠左右移動。香蕉從畫面上方不斷地掉下來,遊戲會記錄猴子吃到了幾串香蕉,當猴子吃到10串香蕉時,會說我吃飽了,然後遊戲停止。

場景安排

  1. 開新檔案,刪除貓咪的角色。
  2. 新增變數「吃到幾串香蕉」。

在指令區中選取變數類別,按下「產生一個變數」按鈕,將變數命名為「吃到幾串香蕉」,選擇「適用所有角色」。

  1. 新增猴子的角色。

在角色區中點選 i1 圖示,開啟猴子(內建圖庫Animals→monkey1)的角色。你可以使舞臺區上方的 i2 按鈕,將猴子縮小。

  1. 新增香蕉的角色。

在角色區中點選 i1 圖示,開啟香蕉(內建圖庫Things→bananas1)的角色,並匯入聲音(內建聲音庫Vocals→Ya)。你可以使舞臺區上方的 i2 按鈕,將香蕉縮小。

  1. 複製二個香蕉角色。

你可以使舞臺區上方的「印章」按鈕複製角色。方法是按下 i3 按鈕後,再到舞臺區中的香蕉角色上點選一下,即可完成複製的動作。

程式安排

  1. 在猴子的角色上撰寫程式。
_images/009_003.gif
  1. 在香蕉的角色上撰寫程式。
_images/009_004.gif

觀念複習

_images/009_005.png

教學影片

練習案例:猴子吃香蕉(過關版)

【說明】第一關會有三串香蕉會從天上掉下來,當猴子吃到10串香蕉時,會進入第二關,並有兩顆棒球,被棒球打到會倒扣1串香蕉,當猴子吃到20串香蕉時,會進入第三關,並且有一個起士盤,吃到起士盤相當於5串香蕉,當猴子吃到40串香蕉以上時,就會顯示過關畫面,然後遊戲終止。

【提示】

  1. 使用三個不同的舞台背景,做為關卡的標示,再一個寫著過關文字的背景。
  2. 當綠旗被點一下時,先隱藏棒球和起士盤。進入第二關時,廣播給棒球讓它出現。進入第三關時,廣繙給起士盤讓它出現。
  3. 香蕉、棒球、起士盤的程式碼雷同,只是加分有所差異。