軟件編程系列課講義
Scratch前置課第五講:射箭比賽
一、教學目標
1、掌握在()秒內滑行到x()y()、移到x()y()、將y坐標增加()、將x坐標增加()、如果…那么…否則…、重復執行和變量【將()設為()、將()增加()】的積木腳本使用;
2、學習對程序腳本進行邏輯梳理。
二、主要程序腳本
編號
詳細內容
功能描述
【1】
“在()秒內滑行到x()y()”
讓角色在規定時間內滑行到舞臺區指定位置
(時間賦值范圍為:
坐標賦值范圍為:和角色大小相關)
【2】
“移到x()y()”
讓角色移動到舞臺區指定坐標位置
(賦值范圍為:和角色大小相關)
【3】
“將y坐標增加()”
讓角色在舞臺區向上或向下移動指定的距離,使角色的y坐標發生變化
(賦值范圍為:和角色大小相關,在-180~180之間)
【4】
“將x坐標增加()”
讓角色在舞臺區向左或向右移動指定的距離,使角色的x坐標發生變化
(賦值范圍為:和角色大小相關,在-240~240之間)
【5】
“如果…那么…否則…”
進行條件判斷,條件為真時執行第一個空格內的腳本,不為真則執行第二個空格內的腳本
【6】
“重復執行”
該積木內的程序腳本一直不停執行,除非遇到結束標志或者強制停止
【7】
“將()設為()”
用于給指定的變量設置為指定的字符串或數字
(變量選項為建立的變量名;設為數字時舞臺區小數點后可顯示六位)
【8】
“將()增加()”
按給定的值更改指定變量
三、課堂準備
編號
名稱
內容
來源
備注
【1】
PPT課件
課堂全流程演示文稿
火星科學盒官網
【2】
課程資料
PPT課件、講義、視頻
火星科學盒官網
【3】
學生上課使用器材
筆記本電腦或者臺式電腦
老師自備
電腦建議使用Windows系統,蘋果電腦和Linux系統需要從官網上單獨下載對應的軟件
游戲手柄
火星人商城采購
射箭比賽初始程序
網盤鏈接下載
【4】
編程軟件下載
Scratch3.0
火星科學盒官網
火星科學盒官網在線編輯版
離線下載版
安裝好后測試一下是否可以使用
四、上課流程
本節課包括8步具體流程:
(1)第1步為導入部分,使用講故事的形式,通過一個有趣的小故事引出射箭比賽這個游戲。時長控制在10分鐘內。
(2)第2-7步為項目制作,把射箭比賽這個項目拆分成6個任務,第1個任務實現蘋果在舞臺右側上下滑動效果,考察在()秒內滑行到x()y()積木的使用;任務二實現用方向鍵控制弓上下移動;任務三實現弓的造型切換,考察如果…那么…否則…積木的使用;任務四考察將x坐標增加(),實現箭向右移動;任務五考察重復執行;任務六通過添加變量記錄箭射中蘋果的分數。時長控制在65分鐘內。
(3)第8步為任務梳理,對重點積木腳本進行邏輯梳理。時長控制在15分鐘內。
上課步驟
主要內容
備注
【第1步】引入
【對應PPT】“開始頁”與“項目說明”部分
【時長】10min
通過有趣的互動或小故事引入本節課制作的項目——射箭比賽。(射箭比賽效果說明見“第六部分
–
附錄一”)同時向學生說明本節課的課堂內容。
【話術】在這節課中,老師給你們布置六個小任務,通過這六個小任務制作完成射箭比賽的作品,這六個任務用到的都是前四節課學習過的積木,老師會給同學們詳細描述任務要求,大家來比一比看看哪個同學的任務完成的最快。
引入部分要生動有趣,激發學生的創作興趣。
【第2步】蘋果上下滑動
【對應PPT】“任務一”
【時長】10min
【銜接話術】我們要用弓箭去射在舞臺右側移動的蘋果,但是現在卻發現,蘋果在舞臺右側是從一個位置瞬間移動到另一個位置的,我們看不到蘋果的移動過程也不知道它下一次會出現在什么位置。這種情況下想射中蘋果太困難了。所以,第一個任務就是:修改蘋果角色的積木,使我們能夠看到蘋果的移動過程。
【提問】同學們在角色區選中蘋果角色,觀察蘋果的腳本區,是哪個積木讓蘋果在舞臺區右側瞬間移動的呢?(等待學生觀察和回答)
【講解】蘋果角色腳本區的“移到x()y()”積木使得蘋果在舞臺區瞬間移動。
【提問】用哪塊積木進行替換可以看到蘋果的移動過程呢?(學生回答并拼接積木)
【總結】使用“在()秒內滑行到x()y()”積木替換“移到x()y()”積木可以看到角色的移動過程。(程序樣例見“第五部分
–
程序1”)
1.注意提醒學生在角色區選中蘋果角色;
2.原腳本中的“在()和()之間取隨機數”要放在“在()秒內滑行到x()y()”中y的后面。
【第3步】方向鍵控制弓上下移動
【對應PPT】任務二
【時長】15min
【銜接話術】現在蘋果可以在舞臺區移動并能夠看清移動過程,不停移動的箭靶已經制作完成了。下面我們來完成任務二,用方向鍵控制弓上下移動去射蘋果。
【任務說明】首先為弓設置一個x坐標為-180,y坐標為任意數字的初始位置。之后使用上下方向鍵分別控制弓上下移動。
【提問】為角色設置初始位置時使用什么積木(學生回答)
【講解】使用“移到x()y()”為角色設置初始位置,需要把它拼接在“當小綠旗被點擊”積木的下方。
【提問】偵測鍵盤上按鍵有沒有按下的積木是什么?(學生回答)
【講解】使用偵測分類中的“按下()鍵”偵測鍵盤上按鍵有沒有被按下。
【提問】角色上下移動時什么坐標在變化?實現角色上下移動的積木是什么?(學生回答)
【講解】角色上下移動時y坐標在變化,使用“將y坐標增加()”積木實現角色上下移動。
【話術】同學們自己嘗試拼接積木實現按下上下方向鍵控制角色上下移動的功能,注意想要一直不停地判斷按鍵有沒有被按下還需要添加什么積木。(等待學生拼接)
【總結】在“當小綠旗被點擊”積木下方拼接“移到x()y()”積木為弓設置初始位置,之后,運行“重復執行”內的腳本,一直不停地偵測上下方向鍵有沒有被按下,如果按下↑鍵,那么弓向上移動。如果按下↓鍵,那么弓向下移動。(程序樣例見“第五部分
–
程序2”)
1.注意提醒學生先在角色區選中弓角色;
2.“移到x()y()”積木中填入的數字,x后面是-180,y后面為-200到200之間的任意整數。
【第4步】弓的造型切換
【對應PPT】任務三
【時長】15min
【銜接話術】我們已經可以控制弓上下移動了,下面是不是就可以按下空格鍵去射箭了呢。同學們,弓在箭射出去之前和射出去之后,它的造型是一樣的嗎?(等待學生自由回答)
【講解】弓在箭射出去之前是拉滿弓的造型,在箭射出去之后,弓就變成了沒有箭的造型。在弓角色的造型界面也可以看到,造型1是箭射出去之前的滿弓造型,造型2是箭射出去之后的造型。
【提問】在游戲中是使用空格鍵控制箭發射的,按下空格鍵時箭發射出去,那如果按下空格鍵,弓角色是換成造型1還是造型2呢?(學生回答)
【講解】按下空格鍵時,弓角色應該切換到造型2,也就是如果按下空格鍵那么換成造型2,否則換成造型1。
【提問】切換角色造型到指定造型的積木是什么?(學生回答)
【講解】“換成()造型”積木。
【提問】使用“如果按下空格鍵那么…否則…”這組積木,在按下空格鍵時執行的是“那么”后面的積木,還是“否則”后面的積木?(學生回答)
【講解】在按下空格鍵時執行“那么”后面的積木,所以要把“換成弓造型2造型”積木放在“那么”后面的空格中。(等待學生完成拼接)
【總結】使用“如果按下空格鍵那么換成弓造型2造型否則換成弓造型1造型”積木實現按下空格時弓造型切換的效果,注意要把這組積木放在重復執行中。(程序樣例見“第五部分
–
程序3”)
1.老師做出射箭的動作引導學生想象箭射出前后弓的造型變化;
2.在造型界面和編程界面之間切換時注意提醒學生。
【第5步】發射箭
【對應PPT】任務四
【時長】5min
【銜接話術】現在按下空格時,弓已經換成了沒有箭的造型,但是箭這個角色好像還待在弓的位置沒有向右移動,下面我們把箭這個角色腳本區的積木補充完整,實現按下空格后箭向舞臺右側發射的效果。
【提問】使角色向右移動的是什么積木?(學生回答)
【講解】“將x坐標增加()”
【提問】“將x坐標增加()”積木應該放在“重復執行”積木內還是積木外?(學生回答)
【講解】應該放在“重復執行”內。(等待學生添加積木)
【總結】把“將x坐標增加()”積木放在箭角色已有的“重復執行”內,實現按下空格鍵后箭向右飛行的效果。(程序樣例見“第五部分
–
程序4”)
提醒學生切換到角色箭再拼接腳本
【第6步】蘋果被箭射中
【對應PPT】任務五
【時長】5min
【鏈接話術】箭已經發射出去了,但是蘋果被箭射中之后并沒有任何變化。在蘋果角色的腳本區有一組偵測蘋果碰到箭就切換造型的積木,但是這組積木并沒有運行是什么原因呢?(學生回答)
【講解】這組積木只會執行一次,也就是點擊小綠旗后只會偵測一次蘋果有沒有碰到箭,隱藏不能實現碰到箭后就切換造型的效果,需要添加“重復執行”積木進行持續偵測。(程序樣例見“第五部分
–
程序5”)
引導式提醒學生切換到蘋果角色。
【第7步】添加變量記錄得分
【對應PPT】任務六
【時長】15min
【鏈接話術】同學們前面五個任務完成的非常棒,看樣子對我們學過的知識都掌握得不錯,下面我們來完成最后一個任務。既然我們制作的作品是一個射箭比賽的小游戲,那肯定會有得分,同學們能不能自己拼接積木,實現蘋果被射中后得分加一的效果呢?(等待學生拼接)
【總結】首先需要新建一個變量來記錄得分,在游戲開始時得分初始值為0,使用“將(得分)設為(0)”積木拼接在蘋果角色的“當小綠旗被點擊”下方,之后,蘋果碰到箭的時候得分加一,因此,把“將(得分)增加(1)”積木放在“如果碰到箭那么…否則…”積木組中“那么”后面的位置。(程序樣例見“第五部分
–
程序6”)
學生打字比較困難并且時間緊張時,可以用字母或數字命名變量。
【第7步】任務梳理
【對應PPT】“任務梳理”部分
【時長】10min
【銜接話術】同學們太棒了,六個任務全部正確完成了。下面我們一起梳理一下本節課寫的程序,看看我們完成了多么棒的作品吧。
【提問】在第二和第三個任務中,我們為弓添加了一組積木,可以描述一下這組積木實現了什么效果嗎?(學生回答)
【總結】運行游戲后,弓移到初始位置,使用上下方向鍵可以控制弓上下移動;弓一直保持造型1,按下空格鍵時換成造型2。
【提問】如何為弓設置初始位置?(學生回答)
【總結】使用“移到x()y()”積木。
【提問】這組積木可以實現“箭”什么樣的功能效果?(學生回答)(積木圖片見“第六部分
–
附錄二”)
【講解】按下空格鍵后箭從弓出發向右側發射。
【提問】這組積木讓蘋果在什么位置如何移動?(學生回答)(積木圖片見“第六部分
–
附錄三”)
【講解】實現蘋果在舞臺區右側上下移動,能夠看見移動過程。
老師以提問的方式引導學生分析
五、主要程序說明
程序樣例編號
程序樣例與說明
對應的角色
(任務一的最終版程序)
【程序1-1描述】角色在舞臺區右側上下滑動到隨機位置,然后停留1秒。
【蘋果】
(任務二的最終版程序)
【程序2描述】弓移到初始位置之后,持續判斷上下方向鍵有沒有被按下,被按下時向相應的方向移動。
【弓】
(任務三的最終版程序)
【程序3描述】弓移到初始位置后,持續判斷上下方向鍵和空格鍵有沒有被按下。方向鍵被按下時,弓會向相應方向移動;空格鍵沒有按下時,弓保持造型1,按下時弓換成造型2。
(任務四的最終版程序的一部分)
【程序4描述】按下空格鍵后,箭先移動弓的位置,然后顯示在舞臺區,之后會一直向右移動,碰到舞臺右邊緣時隱藏并且停止這組腳本的執行。
【箭】
(任務五最終版程序)
【程序5描述】蘋果角色持續偵測有沒有碰到箭,沒有碰到時保持造型1,碰到后保持0.2秒造型2。
【蘋果】
(任務六最終版程序)
【程序6描述】游戲開始后分數為0,蘋果角色持續偵測有沒有碰到箭,沒有碰到時保持造型1,碰到后分數增加1并保持0.2秒造型2
六、附錄
附錄一:射箭比賽效果說明
蘋果角色在舞臺區右側上下滑動,滑動到隨機位置并停留1秒;用方向鍵可以控制弓上下移動,按下空格鍵時把箭發射出去,射中蘋果時蘋果切換造型,同時得一分。弓箭數減少到0時游戲停止。
附錄二:任務梳理——箭角色積木圖片
附錄三:任務梳理——蘋果角色積木圖片