資源簡介 經(jīng)典掃雷游戲項(xiàng)目第四講: 游戲結(jié)束一、 課程目標(biāo)1、掌握克隆體的應(yīng)用,能夠分析克隆體如何完成程序的調(diào)用;2、完成掃雷游戲中游戲失敗,游戲勝利的效果以及重新開始游戲的功能。二、 課堂組織形式1、開放式問題討論2、引導(dǎo)式思維發(fā)散3、問答式課堂互動(dòng)4、針對問題探究實(shí)踐5、學(xué)生動(dòng)手制作項(xiàng)目6、課堂內(nèi)容梳理鞏固三、課堂準(zhǔn)備編號(hào) 名稱 內(nèi)容 來源 備注【 1】 PPT 課件 課堂全流程演示文稿 火星科學(xué)盒官網(wǎng)【2】 課程資料 PPT 課件、講義、視頻 火星科學(xué)盒官網(wǎng)【 3】 教師參考程序 項(xiàng)目完整程序 網(wǎng)盤鏈接下載【4】 學(xué)生上課使用資料 筆記本電腦或者臺(tái)式電腦 老師自備 電腦系統(tǒng)需求: win 10+,或 macOS 10.13+編程所需素材 網(wǎng)盤鏈接下載課堂報(bào)告 網(wǎng)盤鏈接下載【 5】 編程軟件下載 scratch3.0 scratch 官網(wǎng) 課前下載安裝四、主要腳本程序編號(hào) 詳細(xì)內(nèi)容 功能描述【 1】 “停止該角色的其他腳本” 停止指定角色的其他腳本的執(zhí)行五、上課流程本節(jié)課包括 5 步具體流程:(1)第 1 步為程序復(fù)習(xí)。老師帶領(lǐng)學(xué)生梳理分析作品中已經(jīng)編寫完成的程序及實(shí)現(xiàn)的功能。時(shí)長控制在 10 分鐘內(nèi)。(2)第 2~3 步為作品編程。實(shí)現(xiàn)選中有雷的方塊時(shí)游戲失敗的效果,完成所有無雷方塊被點(diǎn)擊后游戲勝利的效果,以及實(shí)現(xiàn)按下 黃臉按鈕角色后重新開始游戲的功能。時(shí)長控制在 55 分鐘內(nèi)(3)第 4 步為拓展思考。 思考如何編寫程序?qū)崿F(xiàn)在第 1 次點(diǎn)擊方塊時(shí)不會(huì)選中雷。時(shí)長控制在 15 分鐘內(nèi)。(4)第 5 步為課堂總結(jié), 知識(shí)圖譜的形式總結(jié)課程內(nèi)容,鞏固重點(diǎn)知識(shí)點(diǎn) 。時(shí)長控制在 5 分鐘內(nèi)。上課步驟 主要內(nèi)容 備注【第 1 步】 程序復(fù)習(xí) 【對應(yīng) PPT】“已實(shí)現(xiàn)的 功能” 【時(shí)長】 10min 【講解】 1. 帶領(lǐng)學(xué)生分析點(diǎn)擊綠旗游戲開始時(shí)腳本的執(zhí)行過程; 2. 帶領(lǐng)學(xué)生復(fù)習(xí)設(shè)置雷的位置的腳本; 3. 帶領(lǐng)學(xué)生復(fù)習(xí)如何完成方塊的克隆,形成雷區(qū); 4. 帶領(lǐng)學(xué)生復(fù)習(xí)方塊被點(diǎn)擊以及按下空格鍵后實(shí)現(xiàn)的效果; 5. 分析游戲中還沒有實(shí)現(xiàn)的功能是什么,引出本節(jié)課的編程任務(wù)【第 2 步】 作品編程 【對應(yīng) PPT】“游戲結(jié)束” 【銜接】 接下來實(shí)現(xiàn)游戲失敗和游戲勝利的效果, 當(dāng)點(diǎn)擊的方塊有雷時(shí), 游戲失敗, 應(yīng)該停止執(zhí)【時(shí)長】 30min 行。當(dāng)沒有雷的方塊全部被找到時(shí),游戲勝利,顯示勝利的效果。 【講解】 1. 帶領(lǐng)學(xué)生分析導(dǎo)致游戲失敗的條件以及游戲失敗后的效果是什么; 2. 帶領(lǐng)學(xué)生分析直接拼接 [停止該角色的其他腳本] 能否停止全部腳本能運(yùn)行; 3. 講解如何實(shí)現(xiàn)停止所有克隆體角色正在執(zhí)行的腳本; 4. 講解如何實(shí)現(xiàn)有雷的方塊被點(diǎn)擊時(shí)游戲失敗的效果。 【制作】 學(xué)生編寫程序,實(shí)現(xiàn)有雷的方塊被點(diǎn)擊時(shí)游戲失敗的效果(程序樣例見“第六部分 - 程序 1-1”) 【講解】 1. 老師帶領(lǐng)學(xué)生分析獲取游戲勝利的條件以及游戲勝利時(shí)實(shí)現(xiàn)的效果; 2. 講解判斷游戲是否獲得勝利的過程; 3. 講解如何編寫程序判斷游戲是否獲得勝利 【制作】 1. 學(xué)生完成判斷游戲是否勝利的程序編寫,以及游戲勝利時(shí),方塊腳本停止運(yùn)行的效 果(程序樣例見“第六部分 - 程序 1-2”) 2. 學(xué)生編寫程序,實(shí)現(xiàn)點(diǎn)擊角色后判斷游戲是否勝利的功能(程序樣例見“第六部分- 程序 1-3”) 3. 學(xué)生繪制表示游戲勝利的“win”角色 4. 編寫程序,實(shí)現(xiàn)游戲勝利時(shí),“win”角色顯示的效果(程序樣例見“第六部分 - 程 序 1-4”) 【總結(jié)】 以提問的形式帶領(lǐng)學(xué)生總結(jié)實(shí)現(xiàn)任務(wù)六的編程思路【第 3 步】 作品編程 【對應(yīng) PPT】“重新開始” 【時(shí)長】 25min 【銜接】 當(dāng)游戲失敗或勝利后, 點(diǎn)擊上方的笑臉按鈕, 可以重新開始游戲, 接下來編寫程序, 實(shí) 現(xiàn)游戲重新開始的功能。 【講解】 老師帶領(lǐng)學(xué)生分析游戲進(jìn)行中, 游戲失敗和游戲勝利時(shí), 黃臉按鈕角色分別顯示的造型 是什么 【制作】 學(xué)生編寫程序, 實(shí)現(xiàn)黃臉按鈕角色的造型切換(程序樣例見“第六部分 - 程序 2-1”) 【講解】 老師帶領(lǐng)學(xué)生分析如何實(shí)現(xiàn)點(diǎn)擊黃臉按鈕角色后開始游戲的功能 【制作】學(xué)生編寫程序, 實(shí)現(xiàn)黃臉按鈕角色被點(diǎn)擊時(shí)發(fā)送廣播, 以及方塊接收到廣播后開始游戲 的功能(程序樣例見“第六部分 - 程序 2-2”) 【講解】 帶領(lǐng)學(xué)生運(yùn)行程序進(jìn)行測試, 分析為什么游戲失敗或勝利時(shí), 點(diǎn)擊黃臉按鈕后, 無法成 功實(shí)現(xiàn)游戲重新開始的功能 【制作】 1. 修改方塊角色的腳本,完成點(diǎn)擊黃臉按鈕重新開始游戲的功能(程序樣例見“第六 部分 - 程序 2-3”) 2. 修改“win”角色的腳本, 實(shí)現(xiàn)游戲開始后, 角色隱藏的功能(程序樣例見“第六部 分 - 程序 2-4”) 【總結(jié)】 帶領(lǐng)學(xué)生總結(jié)任務(wù)七中實(shí)現(xiàn)的主要功能【第 4 步】 拓展思考 【對應(yīng) PPT】“思考與拓 展” 【時(shí)長】 15min 【講解】 1. 講解如何將有雷的方塊變成沒有雷的方塊; 2. 講解如何判斷是否是第 1 次點(diǎn)擊方塊; 【制作】 學(xué)生編寫程序,點(diǎn)擊方塊后, 判斷是否是第 1 個(gè)被點(diǎn)擊的方塊(程序樣例見“第六部分 此部分為課堂挑 戰(zhàn),根據(jù)課堂實(shí) 際情況完成- 程序小挑戰(zhàn)-1”) 【講解】 講解如何通過替換列表項(xiàng),實(shí)現(xiàn)第 1 次點(diǎn)擊方塊時(shí)不會(huì)觸發(fā)雷的功能 【制作】 學(xué)生編寫程序,實(shí)現(xiàn)第 1 次點(diǎn)擊方塊時(shí)不會(huì)觸發(fā)雷的功能(程序樣例見“第六部分 - 程序小挑戰(zhàn)-2”)【第 5 步】知識(shí)鞏固 【對應(yīng) PPT】“總結(jié)與鞏 固” 【時(shí)長】 5min 老師根據(jù)ppt 中的知識(shí)圖譜回顧本節(jié)課的主要內(nèi)容,帶領(lǐng)學(xué)生完成知識(shí)總結(jié)六、主要程序說明任務(wù)六: 實(shí)現(xiàn)游戲失敗和游戲勝利的效果程序樣例編號(hào) 程序樣例與說明 對應(yīng)的角色1-1 【程序 1-1 描述】 當(dāng)有雷的方塊被點(diǎn)擊時(shí),播放爆炸的聲音,實(shí) 現(xiàn)造型切換,之后廣播游戲失敗的消息。 【方塊】【程序 1-1 描述】 所有克隆體接收到游戲失敗的廣播消息后,等 待一段時(shí)間,保證造型切換效果完成后,停止其他腳本的運(yùn)行1-2 【程序 1-2 描述】 從第 1 項(xiàng)開始, 依次檢測沒有雷的方塊顯示的是 否是數(shù)字造型, 如果不是, 表示這個(gè)方塊沒有被找到, 游戲沒有獲 得勝利, 應(yīng)該停止檢測。當(dāng)所有的方塊都被檢測完成且滿足條件 時(shí),表示游戲勝利,發(fā)送游戲勝利的廣播消息 【方塊】【程序 1-2 描述】 當(dāng)接收到游戲勝利的廣播消息后,等待勝利效 果完成,之后停止克隆體的所有其他腳本的運(yùn)行1-3 【程序 1-3 描述】 當(dāng)角色被點(diǎn)擊后,檢測游戲是否獲得勝利 【方塊】1-4 【程序 1-4 描述】 點(diǎn)擊綠旗游戲開始時(shí),移到初始位置并隱藏, 接收到游戲勝利的廣播消息后,顯示在舞臺(tái)上 【角色 1】任務(wù)七: 按下黃臉按鈕時(shí)游戲重新開始程序樣例編號(hào) 程序樣例與說明 對應(yīng)的角色2-1 【黃臉按鈕】【程序 2-1 描述】 游戲開始時(shí),角色顯示為笑臉造型,游戲失敗 時(shí),顯示為“l(fā)ose”造型,游戲勝利時(shí),顯示為“win”造型。2-2 【程序 2-2 描述】 當(dāng)角色被點(diǎn)擊后,廣播“游戲開始”的消息, 并切換成笑臉造型 【黃臉按鈕】【程序 2-2 描述】 當(dāng)綠旗被點(diǎn)擊后,設(shè)置變量的初始值,并廣播 游戲開始的消息,接收到游戲開始的消息之后,開始游戲 【方塊】2-3 【程序 2-3 描述】 當(dāng)接收到游戲開始的廣播消息之后,先刪除游 戲中所有的克隆體,之后再重新開始游戲 【方塊】2-4 【程序 2-4 描述】 接收到游戲開始的廣播消息后,角色移到固定 位置并隱藏 【角色 1】小挑戰(zhàn): 編程實(shí)現(xiàn)第 1 次猜中方塊時(shí)不觸發(fā)雷程序樣例編號(hào) 程序樣例與說明 對應(yīng)的角色小挑戰(zhàn)-1 【程序 小挑戰(zhàn)-1 描述】 游戲開始時(shí),將變量“點(diǎn)擊次數(shù)”的值 設(shè)為 0。 【方塊】【程序 小挑戰(zhàn)-1 描述】 每點(diǎn)擊一次方塊,就將變量的值增加 1【程序 小挑戰(zhàn)-1 描述】 當(dāng)被點(diǎn)擊的方塊處有雷時(shí),判斷是否是 第 1 個(gè)被點(diǎn)擊的方塊,如果不是,就實(shí)現(xiàn)游戲失敗的效果。小挑戰(zhàn)-2 【程序小挑戰(zhàn)-2 描述】 方塊被點(diǎn)擊時(shí), 判斷是否有雷, 如果有雷, 那么判斷是否是第 1 個(gè)被點(diǎn)擊的方塊, 如果不是, 游戲失敗; 如果 是,就隨機(jī)選擇一個(gè)沒有雷的方塊變成有雷的方塊, 之后將被點(diǎn)擊 【方塊】的方塊變成沒有雷的方塊,最后重新檢測被點(diǎn)擊的方塊。(共51張PPT)經(jīng)典掃雷游戲游戲結(jié)束已實(shí)現(xiàn)的功能思考與拓展游戲結(jié)束重新開始總結(jié)與鞏固已實(shí)現(xiàn)的功能1完成了哪些功能?程序梳理梳理《掃雷》游戲中已經(jīng)完成程序及實(shí)現(xiàn)的功能游戲開始設(shè)置雷區(qū)方塊的行數(shù)設(shè)置雷區(qū)方塊的列數(shù)設(shè)置雷的總數(shù)列表存儲(chǔ)方塊的造型狀態(tài);初始狀態(tài)是“造型9"設(shè)置雷分布的位置克隆方塊生成雷區(qū)方塊編號(hào)沒有雷有雷列表項(xiàng)目數(shù)等于方塊總數(shù)初始:列表項(xiàng)全部為0隨機(jī)替換列表項(xiàng),表示把雷放入雷區(qū)的隨機(jī)位置雷的位置克隆方塊第一個(gè)方塊的位置使用變量為克隆體編號(hào)克隆的行數(shù)每一行方塊的個(gè)數(shù)相鄰的兩個(gè)方塊的間隔下一行第一個(gè)方塊的位置克隆體的操作方塊被點(diǎn)擊時(shí)顯示的是“造型9”檢測方塊處的狀態(tài)是否有雷?有雷方塊全部切換造型周圍是否有雷?切換這個(gè)方塊的造型繼續(xù)檢測周圍方塊是是否否克隆體的操作變量初始值等于雷的總數(shù)在方塊處按下空格鍵時(shí)等待空格鍵抬起如果顯示“造型9”(沒有被標(biāo)記)切換到“造型10”(添加標(biāo)記)變量減1如果顯示“造型10”(已被標(biāo)記)切換到“造型9"(取消標(biāo)記)變量加1未實(shí)現(xiàn)的功能游戲失敗后沒有停止游戲沒有實(shí)現(xiàn)游戲勝利效果游戲結(jié)束2任務(wù)六:觸發(fā)雷時(shí),游戲失敗停止;沒有雷的方塊全部被找到時(shí),游戲勝利任務(wù)六游戲失敗導(dǎo)致失敗的條件:失敗后的結(jié)果鼠標(biāo)點(diǎn)擊有雷的方塊方塊被點(diǎn)擊后不再切換造型停止運(yùn)行停止腳本可以實(shí)現(xiàn)游戲失敗的效果嗎?停止腳本為什么切換造型的腳本還在運(yùn)行克隆的角色只有被點(diǎn)擊的克隆體會(huì)停止腳本運(yùn)行克隆的角色每個(gè)克隆體是一個(gè)單獨(dú)的角色:每個(gè)克隆體執(zhí)行的腳本是獨(dú)立的被點(diǎn)擊的克隆體停止腳本只有被點(diǎn)擊的有雷的克隆體的腳本會(huì)停止停止腳本所有克隆體接收廣播:時(shí)間延遲存在的問題:造型還沒有切換完成,切換造型的腳本就被停止了解決的方法:添加等待時(shí)間,推遲命令的執(zhí)行游戲失敗Step1:點(diǎn)擊有雷方塊時(shí),游戲失敗游戲勝利游戲勝利的條件:沒有雷的方塊全部被找到勝利后的結(jié)果顯示游戲勝利角色方塊被點(diǎn)擊后不再切換造型切換造型的腳本停止運(yùn)行游戲勝利條件從第1個(gè)方塊處開始,依次判斷沒有雷的方塊是否顯示數(shù)字造型:①是否有雷②沒有雷的方塊的造型是否是數(shù)字造型游戲勝利的條件:沒有雷的方塊全部被找到沒有雷的方塊的造型是“造型0"-“造型8"第一個(gè)方塊沒有勝利,停止檢測下一個(gè)方塊是否有雷?顯示為數(shù)字造型?否否是是游戲勝利條件第一個(gè)方塊沒有勝利,停止檢測下一個(gè)方塊是否有雷?顯示為數(shù)字造型?否否是是從第一個(gè)方塊開始:方塊處沒有雷:方塊顯示為數(shù)字造型:檢測下一個(gè)方塊:游戲勝利Step2:檢測游戲是否勝利自定義積木變量的初始值為1:從列表第1項(xiàng)開始檢測全部列表項(xiàng)判斷是否有雷判斷是否切換了造型停止檢測檢測下一項(xiàng)廣播勝利消息開始檢測什么時(shí)候執(zhí)行檢測游戲是否勝利的腳本呢?游戲勝利效果繪制新角色:使用文本工具繪制角色,之后調(diào)整角色大小游戲勝利角色Step4:游戲勝利角色隱藏和顯示任務(wù)總結(jié)第一個(gè)方塊沒有勝利,停止檢測下一個(gè)方塊是否有雷?顯示為數(shù)字造型?否否是是1.游戲失敗時(shí),如何停止所有克隆體的腳本的執(zhí)行?被點(diǎn)擊的方塊發(fā)送廣播消息,所有克隆體接收到廣播消息后,停止該角色的其他腳本2.如何檢測游戲是否獲得勝利?重新開始3任務(wù)七任務(wù)七:點(diǎn)擊笑臉按鈕時(shí),重新開始游戲。切換造型試一試:編寫程序,實(shí)現(xiàn)“黃臉按鈕”角色的造型切換游戲開始后游戲失敗后游戲勝利時(shí)切換造型Step1:“黃臉按鈕”角色的造型切換點(diǎn)擊按鈕廣播消息開始游戲Step2:接收到“游戲開始"的廣播后開始游戲點(diǎn)擊綠旗后同樣開始游戲程序測試運(yùn)行程序測試,有問題存在嗎?為什么列表項(xiàng)目數(shù)增多?游戲開始所有克隆體都會(huì)接收廣播消息并執(zhí)行這組腳本,導(dǎo)致游戲出現(xiàn)問題廣播消息刪除克隆體刪除全部克隆體先刪除克隆體,再開始游戲Step3:接收廣播后刪除克隆體,之后開始游戲保證克隆體先被刪除程序修改Step3:接收廣播后,角色隱藏開始游戲廣播消息刪除全部克隆體開始游戲隱藏思考與拓展4第一次不踩雷如何保證在第1次點(diǎn)擊的時(shí)候不點(diǎn)中雷呢?第一次不踩雷將有雷的方塊變成沒有雷的方塊:第1次被點(diǎn)擊此處有雷替換被點(diǎn)擊的方塊的列表項(xiàng)第一次不踩雷1.判斷此處是否有雷:2.判斷是否是第1個(gè)被點(diǎn)擊的方塊:①添加變量記錄點(diǎn)擊方塊的次數(shù)②初始值:③方塊被點(diǎn)擊:變量值為1時(shí),表示是第1個(gè)被點(diǎn)擊的方塊點(diǎn)擊次數(shù)Step1:判斷是否是第1次點(diǎn)擊變成沒有雷的方塊改變方塊狀態(tài)隨機(jī)選取沒有雷的方塊變成有雷的方塊把被點(diǎn)擊的方塊變成沒有雷的方塊雷的總數(shù)不變改變方塊狀態(tài)Step2:替換列表項(xiàng)隨機(jī)選取沒有雷的方塊變成有雷的方塊將被點(diǎn)擊的方塊變成無雷的方塊繼續(xù)檢測這個(gè)方塊總結(jié)與鞏固5 展開更多...... 收起↑ 資源列表 第4.docx 第4節(jié)-游戲結(jié)束.pptx 縮略圖、資源來源于二一教育資源庫