資源簡介 Scratch 一階第二十三講: 闖關一、 教學目標1、掌握邏輯運算的“與”“或”命令,變量的顯示和隱藏,如果…那么…否則等積木腳本的使用;2、實現記錄游戲得分和設置關卡的腳本;3、鍛煉進行多個條件連接的邏輯思維能力。二、 主要程序腳本編號 詳細內容 功能描述【 1】 “…或…” 進行條件連接,當其中任意一個條件為真時,返回 值為真【2】 “…與…” 進行條件連接, 當兩個條件都為真時, 返回結果為真。【 3】 “如果…那么…否則” 進行條件判斷。條件為真時, 執行 “那么”里面的腳 本,條件不為真時,執行“否則”里面的腳本【4】 “顯示變量()” 讓指定變量顯示在舞臺上【 5】 “隱藏變量()” 讓指定變量在舞臺上隱藏【6】 “移到x()y()” 角色瞬間移動到指定坐標位置三、課堂準備編號 名稱 內容 來源 備注【 1】 PPT 課件 課堂全流程演示文稿 火星科學盒官網【2】 課程資料 PPT 課件、講義、視頻 火星科學盒官網【 3】 學生上課使用器材 筆記本電腦或者臺式電腦 老師自備 電腦建議使用 Windows 系統,蘋果電腦和 Linux 系 統需要從官網上單獨下載對應的軟件程序素材 鏈接下載【4】 編程軟件下載 Scratch3.0 火星科學盒官網 火星科學盒官網在線編輯版離線下載版安裝好后測試一下是否可以使用四、上課流程本節課包括 5 步具體流程:(1) 第 1 步為引入部分, 老師帶領同學們上傳上節課完成的作品,之后分析本節課需要完成的任務。時長控制在 5 分鐘內。(2) 第 2-3 步為項目制作,首先, 實現分數統計的功能, 琴鍵被擊中時分數增加 1, 琴鍵未被擊中時, 變量分數的值減一。之后,設 置游戲關卡,當游戲時間結束后,根據變量分數的值判斷游戲勝利還是失敗。另外實現在游戲過程中,當分數小于 0 時,游戲 也失敗的效果。時長控制在 70 分鐘內。(3) 第 4 步為課堂總結,總結本節課完成的腳本及重點知識命令。時長控制在 5 分鐘內。(4) 第 5 步為鞏固拓展, 用提問的形式鞏固本節課學習的重點知識命令。時長控制在 10 分鐘內上課步驟 主要內容 備注【第 1 步】引入 【對應 PPT】“封面頁” 【時長】 5min 【銜接話術】 上節課同學們完成了節奏大師游戲中的開場效果及琴鍵下落的功能, 非常棒, 這節課我們繼續來完成節奏大師的游戲制作。【第 2 步】分數統計 【對應 PPT】“統計分數” 部分 【時長】 30min 【銜接話術】 首先上傳上節課完成的作品。(學生操作) 【銜接話術】 先通過視頻來看一下本節課要完成的作品效果。游戲開始之后, 琴鍵 下落, 玩家要做的就是在琴鍵落到下方按鍵附近時, 按下鍵盤的對應按鍵。所以在 本節課, 需要判定玩家是否能夠拿到分數, 并設置游戲關卡啊, 增加游戲的趣味性, 準備好了嗎?那我們馬上開始吧。 【銜接話術】 本節課的任務, 我們通過兩個部分來完成。第一部分是實現得分的統 計,第二部分是設置游戲的關卡。【銜接話術】先來完成第一個任務,統計分數。 【提問】同學們思考一下什么時候游戲的得分會增加。、 【學生回答】 【講解】游戲規則說明了,從左到右的四個按鍵分別是 d 、f 、j 、k,當琴鍵下落到 最下方按鍵的地方時,按下對應按鍵,游戲得分就會增加,否則,游戲得分減小。【銜接話術】 第一個任務就是根據剛剛分析的游戲規則, 實現判定琴鍵落到規定范 圍內時,有沒有按下正確按鍵,以及能否得分的功能。 【提問】 要實現統計游戲分數的功能, 而游戲的分數是不斷變化的, 應該使用什么工具進行統 計呢? 【講解】 記錄一個變化的數據時, 應該使用變量。同學們自己動手建立一個新變量 —— “分數”吧。 【銜接話術】 接下來思考一下判定分數是否增加的條件。先來為“琴鍵 1”角色拼 接腳本。 【講解】 當“琴鍵 1”角色落到按鍵 d 的附近,并且玩家按下了按鍵“d”,那么得 分就可以增加 1。得分增加需要同時滿足兩個條件:琴鍵在按鍵附近、按下 d 鍵。 計算兩個角色之間的距離可以使用偵測模塊中的[到() 的距離],讓它小于一個數 值,就能確定得分的范圍。另外用[按下()鍵]偵測按鍵有沒有按下。 【銜接話術】 得分增加的兩個條件已經確定了, 那么這兩個條件之間的關系是什么 呢?如何將兩個條件進行連接呢? 【提問】 將條件連接起來的命令有“與”命令和“或”命令, 同學們能說一下這兩 個命令之間的區別嗎?(學生回答) 【講解】 邏輯與:表示并且,兩個或多個條件同時滿足時,總條件才成立;邏輯或:表示或者,兩個或多個條件中只要有一個條件成立,總條件就成立。 【講解】 所以這里使用的是“與”命令, 將兩個條件進行連接。如果兩個條件同時 滿足, 那么, 得分加 1。能夠將得分增加的命令是變量模塊中的[將(變量) 增加() ] 命令。 【銜接話術】 什么時候判定能否得分呢? 也就是說如何執行剛剛拼接的“如果…那 么”腳本呢? 【講解】 應該在琴鍵 1 角色移動的過程中判定。在角色還沒有顯示在舞臺上, 或者 已經消失時,是不應該判定的。根據琴鍵 1 角色的腳本,廣播消息“1”后,角色開 始移動, 移到指定位置后,角色停止移動。 【講解】 因此, 當接收到廣播消息 1 之后, 一直判斷能否增加得分, 也就是一直執 行“如果…那么…”腳本,直到琴鍵移到指定位置并隱藏,就不再判斷了。可以對比 角色的 y 坐標判斷角色是都移到指定位置。 【銜接話術】 根據剛剛的分析得出, 需要拼接這樣一組腳本進行得分判定, 同學們 拼接腳本并點擊運行“琴鍵 1”角色的腳本測試,觀察是否存在問題。(學生編寫) (程序樣例見 “第五部分 – 程序 1-1”)【講解】 運行程序后會發現, 按下一次按鍵時不止增加 1 分, 多次按下按鍵還可以 增加多次分數。這樣是不符合游戲規則的。琴鍵到達底部得分增加 1 后, 就不應該再繼續判定了, 所以應該停止這個腳本的執行, 等下次琴鍵 1 角色移動時再開始運 行。在[將分數增加( 1)]命令的下方應該再拼接一個[停止這個腳本]積木。 【銜接話術】 擊中琴鍵后得分的功能已經實現了, 但是琴鍵沒有被擊中時得分并沒 有減少。如何實現呢? 【講解】 琴鍵沒有被擊中, 也就是琴鍵移到指定位置時得分沒有增加。那么剛剛拼 接的這組腳本就不會中途停止運行,而是一直執行直到 y 坐標=-120。這樣,在[重 復執行直到() ]的下方拼接[將分數增加(-1)]就表示琴鍵未被擊中時得分減少。 (學生拼接) (程序樣例見 “第五部分 – 程序 1-2”) 【銜接話術】 琴鍵 1 角色擊中時得分, 未被擊中時減分的效果已經實現了, 還需要 設置分數的初始值和顯示隱藏狀態。為了防止一開始就游戲失敗,設置一個大于 0 的初始得分。同學們根據要求在背景上完成腳本拼接吧。(學生編寫) (程序樣例見 “第五部分 – 程序 1-3”) 【銜接話術】最后在舞臺區拖動變量把它拖動到舞臺的右上角。【銜接話術】琴鍵 1 角色被擊中時分數增加, 未被擊中時分數減一的功能已經實現 了。同學們把自己作品中的腳本補充完整, 并嘗試完成琴鍵 2、3、4 角色被擊中和 未被擊中時得分變化的效果。 (程序樣例見 “第五部分 – 程序 1-小挑戰 1/2/3”)【第 3 步】設置關卡 【對應 PPT】“設置關卡” 部分 【時長】 30min 【銜接話術】 分數統計好了, 那么何時才算過關呢?接下來設置過關和失敗后的效 果吧。首先為游戲添加一個事件進度條, 在限制時間內達到要求的分數時, 游戲顯 示“win”,否則會顯示“LOSE”。 【銜接話術】 首先上傳時間軸和時鐘角色,并把它們移到指定的坐標位置。 【銜接話術】 為時間軸和時鐘角色拼接腳本, 設置它們的顯示和隱藏狀態, 并為它 們設置初始位置。(學生拼接) (程序樣例見 “第五部分 – 程序 2-1 和 2-2”) 【講解】 在作品開始運行時, 兩個角色應該是隱藏狀態, 當切換到游戲界面時, 角 色顯示。使用[移動x() y() ]命令設置角色的初始位置。 【銜接話術】 接下來讓時鐘移動,時間進度條發生變化。 【提問】 讓時鐘移動可以使用什么腳本?(學生回答) 【講解】 可以使用[在() 秒內滑行到x() y() ], 在實現角色移動的同時還能夠 限制游戲時間。在接收到開始廣播后, 角色才開始移動。 (程序樣例見“第五部分 – 程序 2-3”) 【銜接話術】 接下來實現游戲成功和失敗的效果, 首先需要添加“WIN”和“LOSE” 角色。上傳這兩個角色并設置它們的位置為(0,0)。(學生操作) 【銜接話術】 先來實現游戲成功的效果。當時間結束時, 達到指定的分數就表示游 戲成功。游戲成功時,“WIN”角色會顯示,然后游戲停止。 【講解】 在這里游戲成功需要在時間結束時,通過分數這一條件進行判定。所以, 首先要知道時間是否結束。當時鐘到達指定位置時時間就結束了, 可以讓它發送一 個廣播。接收到這個廣播就表示時間結束, 之后判定得分是否大于指定數值。如果 大于這個數值,“WIN”角色顯示,并停止全部腳本運行。 【銜接話術】 同學們拼接腳本, 實現游戲成功的效果吧, 可以調整腳本中的時間參 數, 來設置游戲的時長, 還可以調整分數來調整難度(學生編寫)(程序樣例見“第 五部分 – 程序 2-4 和 2-5”)【銜接話術】 接下來實現游戲失敗的效果, 當時間結束時沒有達到指定分數, 游戲 就會失敗。 【講解】 也就是說時間結束時有兩種結果, 一種是游戲成功, 一種是游戲結束。所 以用[如果…那么…否則]替換剛剛的[如果…那么], 沒有達到分數要求時游戲失 敗。因為失敗時要讓另一個角色“LOSE”顯示, 所以發送一個失敗廣播。另外失敗 和勝利時都要停止游戲, 所以把[停止全部腳本]拼接在最下方。 (程序樣例見“第五 部分 – 程序 2-6”) 【講解】 在“LOSE”角色上拼接這兩組腳本, 游戲開始時角色隱藏, 當接收到失敗 廣播時游戲顯示。 (程序樣例見 “第五部分 – 程序 2-7”)【銜接話術】 同學們把任務 2 的腳本補充完整, 之后, 實現分數小于 0 時, 游戲失 敗停止的效果吧。 (程序樣例見 “第五部分 – 程序 2-小挑戰”)【第 4 步】 課后總結 【對應 PPT】“課后總結” 部分 【時長】 5min 【總結】本節課主要實現了分數統計和關卡設置的功能。在實現分數統計時, 主要 使用了變量以及邏輯“與”和邏輯“或”的命令。在設置通關關卡時, 添加了兩個 新角色,通過對變量分數的判斷,控制角色的顯示。【第 5 步】 鞏固拓展 【對應 PPT】“鞏固拓展” 部分 【時長】 10min 【鏈接話術】本節課的內容到這里就要完成了, 下面我們來簡單復習一下所學的內 容,考一考自己的記憶力。 【知識點鞏固】 老師以提問的方 式進行復習。1.各個腳本的作用分別是什么? 2.各個腳本在本節課中實現的功能效果。【問】“琴鍵 1”滿足這樣的條件時,得分加 1,用語言描述一下這個條件。 【答】 當琴鍵 1 角色碰到按鍵 d 或者與按鍵 d 的距離小于 50 時,按下 d 鍵,得分 加一。五、主要程序說明程序樣例編號 程序樣例與說明對應的角色1-1 【程序 1-1 描述】 接收到廣播消息“1”之后,一直判斷是否被擊 中,直到 y 坐標等于-120,被擊中時分數增加 1。 【 1】1-2 【程序 1-2 描述】 接收到廣播消息 1 之后,一直判斷琴鍵 1 與按鍵 d 之間的距離小于 50 時,是否按下了 d 字母鍵,也就是琴鍵 1 是 否被擊中,直到移到y=-120 的位置。當琴鍵 1 被擊中時,變量分 數增加 1,這個腳本停止運行。當琴鍵 1 的y 坐標等于-120,并且 并未被擊中時,變量分數減一。1-3 【程序 1-3 描述】綠旗被點擊后, 將變量“分數”的初始值設為 5,并將其隱藏。當背景換成“界面”背景時,變量“分數”顯 示。 【背景】1-小挑戰 1 【程序 1-小挑戰 1 描述】 接收到廣播消息 2 之后,一直判斷琴鍵 2 與按鍵 f 之間的距離小于 50 時,是否按下了 f 字母鍵,也就是琴 鍵 2 是否被擊中,直到移到y=-130 的位置。當琴鍵 2 被擊中時, 變量分數增加 1,這個腳本停止運行。當琴鍵 2 的y 坐標等于- 130,并且并未被擊中時,變量分數減一。 【2】1-小挑戰 2 【程序 1-小挑戰 2 描述】 接收到廣播消息 3 之后,一直判斷琴鍵 3 與按鍵 j之間的距離小于 50 時,是否按下了 j字母鍵,也就是琴 鍵 3 是否被擊中,直到移到y=-120 的位置。當琴鍵 3 被擊中時, 變量分數增加 1,這個腳本停止運行。當琴鍵 3 的y 坐標等于- 120,并且并未被擊中時,變量分數減一。 【 3】1-小挑戰 3 【程序 1-小挑戰 3 描述】 接收到廣播消息 4 之后,一直判斷琴鍵 4 與按鍵 k 之間的距離小于 50 時,是否按下了k 字母鍵,也就是琴 鍵 4 是否被擊中,直到移到y=-120 的位置。當琴鍵 4 被擊中時, 變量分數增加 1,這個腳本停止運行。當琴鍵 4 的y 坐標等于- 120,并且并未被擊中時,變量分數減一。 【4】2-1 【程序 2-1 描述】當綠旗被點擊后, 角色隱藏。 當切換成“界面”背 景時,角色顯示,并移到指定位置。 【時間軸】2-2 【程序 2-2 描述】當綠旗被點擊后,角色隱藏。當切換成“界面” 【時鐘】背景時,角色顯示,并移到指定位置。2-3 【程序 2-3 描述】當接收到開始的廣播消息后,角色會在 10 秒內 滑行到時間軸右側的位置。2-4 【程序 2-4 描述】當接收到開始的廣播消息后, 角色會在 10 秒內 滑行到時間軸右側的位置。之后廣播時間到2-5 【程序 2-5 描述】 當綠旗被點擊后,角色隱藏,當接收到時間到廣 播時, 如果變量分數的值大于等于 10,那么勝利角色就會顯示, 并停止全部腳本的運行。 【勝利】2-6 【程序 2-6 描述】 當接收到時間到廣播時,如果變量分數的值大于 等于 10,那么勝利角色就會顯示, 否則,就會廣播失敗的消息, 之后停止全部腳本的運行。2-7 【程序 2-7 描述】 當綠旗被點擊時,角色隱藏,當接收到失敗消息 時,角色顯示。 【失敗】2-小挑戰 【程序 2-小挑戰描述】 接收到開始的廣播后,會一直判斷變量分數 的值是否小于 0,當分數小于 0 時,角色顯示,并停止全部腳本的 運行。(共45張PPT)第23課節奏大師-闖關課程目錄學習目標項目拆解邏輯編程課后總結鞏固拓展學習目標1學習目標123在上節課“節奏大師”程序的基礎上增加分數統計和闖關關卡。學習“如果…否則”、“在( )秒內滑行到( )"、“顯示變量”、“隱藏變量”、“邏輯與"和“邏輯或”等腳本。綜合應用所學腳本完成編程項目以及探究小項目。學習目標主要腳本:學習目標打開Scratch軟件,上傳上節課的程序。項目拆解2整體游戲效果項目拆解任務1:統計分數任務2:設置關卡邏輯編程3想一想在什么情況下可以得分呢如果琴鍵下落到按鍵附近時按下對應按鍵,那么就會得分;琴鍵落到規定位置時沒有按下按鍵,分數減一。任務1:統計分數《功能效果展示》任務要求:如果琴鍵到達按鍵周圍時按下了對應接鍵,那么分數增加1。想一想分數是不斷變化的,如何統計變量動手做:建立變量“分數”任務1:統計分數1、確定“琴鍵1”的得分條件琴鍵1在按鍵d附近按下d鍵D任務1:統計分數1、確定“琴鍵1”的得分條件2個條件之間的關系是怎樣的呢①琴鍵1到d的距離是否小于50?②是否按下d鍵?全部條件都成立時,總條件成立有任意一個條件成立時,總條件成立任務1:統計分數1、確定“琴鍵1”的得分條件得分增加任務1:統計分數2、改變分數值任務1:統計分數什么時候判定能否得分呢3、得分判定琴鍵1移動過程中判定開始移動停止移動3、得分判定任務1:統計分數接收到廣播消息1之后一直判斷能否得分直到琴鍵移到指定位置3、得分判定任務1:統計分數有什么問題存在拼接腳本并運行程序測試任務1:統計分數①按下d鍵得分不止增加1②多次按下d鍵都可以增加得分解決方案:得分后不再繼續判定4、得分只增加1任務1:統計分數5、得分減1琴鍵移到指定位置時得分沒有增加任務1:統計分數6、設置分數的初始值和狀態在背景下編寫:①游戲開始前,分數處于隱藏狀態,并設置初始值為5;②游戲開始時,分數顯示出現。任務1:統計分數7、修改分數在舞臺區的位置動手編程1.復寫“任務1”的程序。2.小挑戰:嘗試編寫琴鍵2-4的程序。琴鍵2的程序琴鍵3的程序琴鍵4的程序任務2:設置關卡《功能效果展示》任務要求:①添加時間進度條,時間進度條不斷變化②當達到要求的分數時,顯示“WIN?。?!”否則,顯示“LOSE!”任務2-2:添加時間進度表1、添加時間軸和時鐘任務2-2:添加時間進度表動手做:設置角色的顯示隱藏狀態及初始位置任務2:設置關卡2、編寫時鐘的相關程序時間進度條是如何變化的呢時間限制任務2-1:設置過關效果3、添加成功和失敗的角色,并調整位置任務2-1:設置過關效果4、游戲成功游戲成功:時間結束時,達到指定分數成功效果:WIN角色顯示,游戲停止時間結束: 停止移動達到指定分數:分數≥10成功效果任務2-1:設置過關效果4、游戲成功任務2-1:設置過關效果5、游戲失敗游戲時間結束成功失敗達到分數值沒達到分數值任務2-1:設置過關效果5、游戲失敗動手編程1.復寫“任務2”的程序。2.小挑戰:實現分數小于0時,游戲失敗停止的效果任務2:小挑戰課后總結4課后總結鞏固拓展5鞏固拓展(1)邏輯與:全部條件都成立時,總條件成立邏輯或:有任意一個條件成立時,總條件成立知識點鞏固(2)變量在舞臺區顯示 變量在舞臺區隱藏Q1:“琴鍵1”滿足這樣的條件時,得分加1,用語言描述一下這個條件。A1:當琴鍵1角色碰到按鍵d或者與按鍵d的距離小于50時,按下d鍵,得分加一。Q & A鞏固拓展 展開更多...... 收起↑ 資源列表 23-節奏大師-闖關.docx 23.節奏大師-闖關.pptx 縮略圖、資源來源于二一教育資源庫