資訊內容
Scratch 基礎教學|第九課: Scratch基本組件之控制類功能塊詳解
hi,大家晚上好。上一節課主要給大家介紹了Scratch事件類功能塊可實現的功能及每一個事件類功能塊的具體用途及如何使用。
本節課主要和大家一塊了解并學習控制類功能塊可實現哪些功能及每一個控制類功能塊的具體使用。
本節課的課程目標如下:
- 介紹控制類功能塊的作用
- 介紹控制類中的每個功能塊
- 創建一個簡單的示例
1介紹控制類功能塊的作用
控制類功能塊提供了對腳本執行的基本控制。可用于停止腳本執行、暫停腳本執行、通過建立循環來重復執行相同的操作、通過一個測試條件的真與假來實現邏輯判斷的處理。Scratch 2.0中新的控制功能塊還允許在程序執行中創建、刪除和克隆角色,以及在開始克隆時觸發腳本的執行。

2
介紹控制類中的每個功能塊

等待"1"秒
使用這個控制功能塊,可以在需要的時候短暫的暫停腳本執行。例如在闖關游戲中,完成關卡時,可以讓游戲短暫的暫停,給玩家展示自己的得分成績,然后再繼續游戲。
暫停腳本執行的另一個原因是,幫助管理聲音文件的播放,如下圖所示:

從上述腳本中可以看出,為了播放第一個聲音文件,腳本暫停了兩秒鐘,然后繼續執行,再播放第2個聲音文件。如果刪除了中間的暫停功能塊,那么,兩個聲音文件將會同時播放,相互干擾。

使用這兩個功能塊,可以創建循環,以重復執行嵌入到其中的功能塊。
02
重復執行"10"次
將嵌入到其中的所有功能塊重復執行指定的次數。如下圖的示例腳本:

03
重復執行
將嵌入到其中的所有功能塊重復執行。如下圖的示例腳本:


04
如果""那么
如果指定的條件結果為真,執行嵌入到該控件中的所有功能塊。

05
如果""那么,否則
如果指定的條件結果為真,則執行控件的上半部分("否則"以上的部分)嵌入的所有功能塊,如果條件為假,執行控件的下半部分("否則"之后)嵌入的所有功能塊。
06
在""之前一直等待
暫停腳本的執行,直到指定的條件為真。示例是,當按下"空格"鍵時,會播放聲音,角色(默認角色即可)可右轉180度,并移動50步。

07
重復執行直到""
重復執行其中嵌入的所有功能塊,直到一個測試條件為真,循環停止運行。使用默認角色(小貓),添加下面執行腳本。在角色未碰到邊緣時,角色會一直移動,在碰到邊緣時,角色停止移動。


08
停止"全部"
停止所有角色中的腳本、一個指定的腳本或者一個角色中其他腳本的運行。這個功能塊有一個下拉列表,可以選擇如下選擇:
全部:停止應該程序中所有腳本的執行。
當前腳本:停止包含了這個功能塊的腳本的執行。
角色的其他腳本:停止屬于該角色的除了包含該功能塊腳本之外的其他所有腳本的執行。


09
當作為克隆體啟動時
當創建一個克隆體的時候,觸發腳本的執行。
10
克隆"自己"
創建指定角色的一個臨時克隆體。
11
刪除本克隆體
刪除當前的克隆體。
通過第一個腳本執行循環8次,對本角色進行克隆,在第二個腳本中,按下空格鍵時,刪除本角色的克隆體。
示例腳本:

示例運行效果:

3
創建一個簡單的示例
一塊和大家做一款小貓追球的小游戲。
該游戲由4個角色、9段腳本組成。游戲的目標就是阻止小貓抓到舞臺上的小球。如果能夠堅持30秒鐘則獲勝,否則失敗。
首先:介紹4個角色組成

第1個和第2個角色,可以點擊從"角色庫中選取角色"選擇即可。
第3個,第4個角色,"點擊繪制角色",通過使用Scratch內建的繪圖編輯器來創建即可。如下圖所示:

其次:添加程序所需的變量

然后:介紹運行腳本

上述的腳本是第一個角色"Cat"的相關運行腳本。
第一個腳本的作用是設置程序啟動時,小貓的相關初始操作。如初始位置,Cat角色朝向ball角色,以及每次移動的大小。
第二個腳本是設置Cat的聲音。
第三個腳本是設置小貓抓到球后停止應用程序中腳本的執行,并廣播消息"you lose".
第四個腳本是記錄程序執行的時間,如果程序運行時間達到30秒,廣播消息"you win",并結束游戲腳本執行。

上述的腳本是第二個角色"Beachball"的相關運行腳本。
該腳本的作用是將小球移動到舞臺頂部,然后將小球下移一層,確保如果beachball角色碰到Cat角色后,beachball角色將顯示于Cat角色的下面而不是上面。

上述的腳本是第三個角色"win msg"的相關運行腳本。
第一個腳本是在程序啟動時,隱藏該角色。第二個腳本在是接到到廣播消息"you win"時,用于將該角色進行顯示,并將該角色置于其它角色之上。

上述的腳本是第四個角色"lose msg"的相關運行腳本。腳本作用與第三個角色的腳本作用類似。
聲明:本文章由網友投稿作為教育分享用途,如有侵權原作者可通過郵件及時和我們聯系刪除

- 上一篇
當數學遇上Scratch | 教你用編程學數學
數學和Scratch有什么聯系? ? ? 數學是計算機的基礎,準確的說,計算機只不過是數學在特定領域的一種應用。同樣,在Scratch創作中,每一個作品也都與數學有著千絲萬縷的聯系。 ? ? Scratch作為一個圖形化的編程工具,各種
- 下一篇
35.Cache:Scratch Pad
對于一些流處理單元(音視頻編解碼等),需要的數據比較集中且連續。如果讓這些數據進入到Cache中,它們會把CPU需要的數據沖刷掉。而且,在較老的程序中,這些音視頻流數據不太會被CPU使用到。最早的SOC芯片中,數據流從采集接口(AD等)直接進入編解碼單元,編碼完成后通過交叉互聯總線直接送