函式積木 ( My Blocks )
當 Scratch 程式越來越複雜時,常常會有許多需要重複執行的積木,這時可以透過函式積木 ( My Blocks ) 將這些積木獨立出來,變成可以重複使用的元件或功能,如此一來除了可以大幅減少程式複雜度,更能增加程式編輯的彈性。
建立函式
點擊「函式積木」選單裡「建立一個積木」的按鈕,就能夠建立自己的函式積木。
點擊後,會彈出建立函式積木的視窗,視窗裡主要分成上下兩個部分:
- ( 上半部 ) 設定函式:設定函式名稱、預覽積木的長相。
- ( 下半部 ) 設定函式參數:設定函式內使用的參數或說明文字,如果勾選「執行完畢再更新畫面」,在函式執行時不會一步步動作,而是直接顯示函式處理的最終結果 ( 增加執行效率 )。
建立函式後,選單裡會出現一個「使用函式」的積木,同時在編輯區域也會看到一個「定義函式」的積木。
如果要編輯函式積木長相,只要在定義函式積木上方,按下滑鼠右鍵,選擇「編輯」,就能編輯函式積木。
如果要刪除函式,只要將編輯區的定義函式積木刪除,選單裡的函式積木也會跟著消失 ( 如果有函式積木有被使用,則無法刪除 )。
使用函式
使用函分成兩個部分:
- ( 編輯區 ) 定義函式積木:下方擺放函式執行時要運行的積木程式。
- ( 選單區 ) 函式積木:作為一般積木使用,使用時會執行該函式定義的積木內容。
舉例來說,下圖的左邊,定義了一個 test 函式,裡面的積木可以讓角色重複五次,每隔 0.5 秒進行像素化的圖像效果,接著在點擊角色時,執行這個函式,執行的效果等同於右邊的積木組合。
如果專案裡有多個角色,都要使用同樣一組函式積木,就可以利用 Scratch 的「背包」功能,將定義好的函式積木用滑鼠拖曳放到背包中,就能讓其他角色使用 ( 背包功能只有用瀏覽器開啟的線上版 Scratch 才能使用 )。
添加輸入方塊
建立函式時,點選下方的「添加輸入方塊」,就能夠添加數字、文字或布林值的參數,如果要刪除參數,只要點選積木長相裡的參數,上方就會出現垃圾桶的按鈕,點擊垃圾桶就能刪除參數。
舉例來說,新建立一個函式積木,放入兩個名為 a 和 b 的參數。
當函式積木有 a 和 b 參數時,定義函式積木就能使用這兩個參數,下圖的例子會在函式執行時,讓角色說出 a 乘以 b 的結果。
放入點擊角色的積木,在點擊角色時執行函式,說出兩個數字相乘的結果。
添加說明文字
添加說明文字可以在定義的函式積木裡增加文字,讓函式更容易辨識。
回傳結果
在一些專案裡,函式的功能不僅是把積木程式包裝起來,更會在執行後回傳結果,若要做到回傳結果的功能,就必須搭配「變數」,下方的例子,就是透過變數來記錄 a 和 b 相乘的結果,執行後點擊角色,角色就會說出 3 乘以 4 等於 12 的結果。
意見回饋
如果有任何建議或問題,可傳送「意見表單」給我,謝謝~