Scratch‎ > ‎

更多積木

2012/10/29 謝碧景(c)編製更新 

 學習目標:

  • 學會『更多積木』類別中『做一個區塊』無選項自訂積木指令之設計與應用。
  • 學會『更多積木』類別中『做一個區塊』有選項自訂積木指令之設計與應用。

一、更多積木 Scratch官網 http://scratch.mit.edu

在設計程式時,常有許多需要重複執行的程式積木,如此程式積木會非常得冗長且龐大,故在『更多積木』可將經常重複用的程式積木撰寫成獨立的小單元,一般程式語言此功能為『程序』(procedure),而 Scratch 中新增積木指令,又分為無選項及有選項的新增積木指令。

 範例1:背景移動。【重點:學會『更多積木』類別中『做一個區塊』無選項新增積木指令之設計與應用】執行畫面如下圖。(檔名:procedure-1.sb2 分享

 
 題目說明:背景不斷往左移動。

 提示:
(1)新增2個角色:()上傳角色檔案→開啟舊檔】即可匯入圖片
    • 背景1:匯入圖片 Scratch\Media\Backgrounds\Nature\flower-bed.jpg
    • 背景2:複製背景1→選取『造型』→在『繪圖編輯器』中→按下『左右翻轉』。
(2)讓2個角色左右接續重複不斷的往左移動,若角色到達左邊界,則讓角色移回右邊界,重複往左移動。

 

1.【場景設計】

(1)開新檔案,刪除貓咪的角色。

(2)新增
角色:背景1、背景2

(3)新增積木指令『做一個區塊』(New Block):每個新增積木指令都需命名,以利程式呼叫。選取『背景1』角色,如下左圖,在【更多積木】→選取『做一個區』→輸入『新增積木指令名稱』,例:「背景1移動」,如下右圖,在指令區中會新增一個『背景1移動』積木,相對的在腳本區中會顯示出該積木,接著開始自訂積木指令(即定義該區塊指令積木之內容)。



2.【程式設計

(1)背景1」角色程式:選取背景1』角色→再選取「程式」,開始定義「背景1移動」程式碼:


(2)背景2」角色程式:同上設定「背景2移動」區塊選取背景2』角色→再選取「程式」,開始定義「背景2移動」程式碼:


3.【測試程式】:按下螢幕上方綠旗 按鈕,開始執行程式。

 範例2:角色向右移動。【重點:學會『更多積木』類別中『做一個區塊』有選項新增積木指令之設計與應用】執行畫面如下圖。(檔名:procedure-2.sb2 分享

 
 題目說明:角色向右移動。

 提示:

 (1) 新增一個區塊定義「角色向右移動」。
 (2) 傳送「選項」值給新增積木指令,彈性控制角色向右移動的次數。



1.【場景設計】

(1)開新檔案,刪除貓咪的角色。

(2)新增
角色: 匯入bear 圖案:從造型庫中選擇裝扮→動物→造型1:bear1-a 及造型2:bear1-b。

(3)新增積木指令『做一個區塊』(New Block):
  • 每個新增積木指令都需命名,以利程式呼叫。選取「bear」角色,如下左圖,在【更多積木】→選取『做一個區塊』→輸入『新增積木指令名稱』,例:「角色向右移動」,如下圖,→按下『選項』,選項有四種,請在數字(number1)輸入「次數」→按下『確定』,接著開始自訂積木指令(即定義該區塊指令積木之內容)。


*註:每個選項(可用中文)上方有x圖示,可移除該項。


2.【程式設計

(1)bear」角色選取bear」角色→再選取「程式」,開始定義「角色向右移動」程式碼:


3.【測試程式】:按下螢幕上方綠旗 按鈕,開始執行程式。

 範例3:滑桿範例應用輸入兩點 (x1,y1)~(x2,y2) 即可運用畫筆繪製直線」,相同題目:改以『更多積木→做一個區塊』自訂積木指令來設計。【重點:學會『更多積木』類別中『做一個區塊』有選項新增積木指令之設計與應用】執行畫面如下圖。(檔名:procedure-3.sb2)  分享


 題目說明: 
 
 (1) 以滑桿輸入兩點 (x1,y1)~(x2,y2) 即可運用畫筆繪製直線。

 (2) 相同題目:改以『更多積木→做一個區塊』自訂積木指令來設計。


1.【場景設計】

(1)開新檔案,刪除貓咪的角色。

(2)新增角色:
  • DRAWLINE』角色:在角色區按下【()繪製新角色】按鈕, 編輯→進入【繪圖工具】→轉成向量模式→以【文字、長方形】繪出『DRAWLINE』角色,如下圖 。
  • 『畫筆』角色:匯入Pencil 圖案:從造型庫中選擇裝扮→物品→Pencil→確定。

(3)變數設定:選取『資料』類別積木→新增變數,分別建立4個變數:x1、y1、x2、y2。

 
  • 舞台上變數值的模式設定:滑桿(slider)。
  • 滑桿圖示上再按下滑鼠右鍵→用滑動紐設定最小與最大值。
  • x1、x2:設定-240~240
  • y1、y2:設定-180~180

2.【程式設計

(1)『畫筆』角色:選取畫筆角色→再選取「程式」,開始定義DrawLine程式碼:

以『自訂積木』有選項新增積木指令設計:
 『更多積木→做一個區塊』DrawLine按下『選項』如下輸入:

 *註:勾選『執行』→可以增加執行速度。


(2)DRAWLINE』角色:選取畫筆角色→再選取「程式」,程式碼如下:


3.【測試程式】:按下螢幕上方綠旗 按鈕開始執行程式,先以滑鼠拖曳分別設定x1、y1、x2、y2 值,再按下DRAWLINE』角色,即可以積木指令繪直線。


homework 作業1:接範例3,請以廣播&接收自訂積木指令設計繪製圓。【重點:學會廣播&接收』自訂積木指令等綜合應用】。(檔名:procedure-4.sb2)  分享

 
 題目說明:

 (1) 以滑桿輸入圓心點(Cx,Cy) 及半徑Radius值,即可運用畫筆繪製紅色實心圓,或藍色空心圓。

 (2) 當按下『Circle-1』會繪出紅色實心圓。

 (3) 當按下『Circle-2』會繪出藍色空心圓。