* * * * *
* * * * *
## 復習上節課學習的內容
Hi,小朋友們!我是阿達老師。我們在前面的課程中完成了小怪物和靈藥兩部分代碼的實現效果,今天我們繼續完成小阿達的 “閃轉騰挪”效果,let's go
## 游戲背景介紹
我們移動鼠標,小阿達要能夠隨著鼠標移動而移動,不僅要去收集靈藥,又要避開逼近過來怪物侵襲,我們收集到一顆靈藥可以加1分,但被小怪物攻擊一次之后就會減3分,分數超過20我們就順利過關,分數下降到0以下,游戲就失敗了,在這個快節奏的游戲靈藥爭奪戰中,小朋友們需要快速反應去收集靈藥,同時還要躲避怪物的步步緊逼
## 實現分析
1、小阿達能夠隨著鼠標移動,并且可以收集靈藥
2、小阿達收集到足夠多的靈藥后,能夠提示成功信息
3、小阿達被怪物攻擊次數過多時,能夠提示失敗信息
## 本節課知識點
使用`碰到角色`功能來實現分數的加減
使用`廣播`消息功能來設置游戲的準入和準出條件
## 視頻實戰
我們打開網易咔嗒,在我的作品中選擇《靈藥戰爭》項目,進入scratch的編程環境
切換到靈藥的腳本區,我們先建立一個綠旗點擊事件,從事件模塊組里拖入`當綠放被點擊`代碼塊,首先來初始化一下得分,從數據模塊組里拖入`將得分設定為0`代碼塊,再來切換一下小阿達的造型,使它在隨著鼠標移動的時候看上去像走路的樣子,

接下來我們要實現小阿達隨著鼠標移動的效果,這個效果的實現方式,我們在《星星獵手》里已經使用過了,從動作模塊組里拖入`移到鼠標指針`,放入上面切換造型的循環代碼中就可以了,

我們來點擊綠旗調試一下吧,現在小阿達已經可以隨著鼠標指針快速移動了,贊
為了增加緊張的氣氛,我們在角色區點擊右鍵多復制幾個小怪物和靈藥,

接下來,我們分別設置一下“碰到怪物”和“碰到靈藥”時分數加減的效果
從事件模塊組里再拖入`當綠旗被點擊`代碼塊,從控制模塊組里拖入`如果...那么...`代碼塊,從偵測模塊組里拖入`碰到鼠標指針`代碼塊,將“鼠標指針”改為“怪物1”,從運行符模塊組里拖入`**或**`代碼塊,將兩段代碼組合一下就是下面的結果

然后,再從運行符模塊組里拖入`**或**`代碼塊,把“怪物2”和“怪物1”繼續組合起來,

同理,我們再用一個`**或**`代碼塊,組合一下“怪物3”,最終的結果代碼為:

我們把這個復雜的條件判斷拖入剛剛的條件判斷語句當中,在條件的結果語句當中,拖入`將得分增加-3`代碼塊,代碼如下:

這段判斷代碼的意思就是:“如果小阿達碰到怪物1或者碰到怪物2或者碰到怪物3,則得分減3”,
我們用同樣的方式設置一下靈藥的判斷條件:

這段判斷代碼的意思就是:“如果小阿達碰到靈藥1或者碰到靈藥2,則得分加1”,
我們把這兩段代碼組合在一起,并且放入一個無限循環代碼塊當中

有小朋友會問,為什么要放到無限循環語句當中呢?那是因為需要不斷的循環的偵測“小阿達碰到了怪物或者靈藥了嗎”、“小阿達碰到了怪物或者靈藥了嗎”、“小阿達碰到了怪物或者靈藥了嗎”......., 否則一旦停止偵測,那這個時候小阿達碰到怪物或者靈藥就不會加減分數了,
我們現在來調試一下,看看是不是可以“碰到靈藥就加分”、“碰到怪物就減分”呢?相信你已經愉快的玩兒起來了吧?小朋友們,別著急,我們還些收尾工作沒有完成呢,我們繼續吧
這個游戲,我們什么情況下才算通關呢?下面我們就來設置一下
我們假設得分大于20分就勝利,再從控制模塊組里拖入`如果...那么...`代碼塊,從運算符模塊組里拖入`***大于***`代碼塊,我們設置條件為:“得分”大于20,把這個條件放入判斷代碼塊;從事件模塊組里拖入`廣播消息`代碼塊,廣播一條新的消息,名稱為“success”,把廣播的消息放入條件判斷的結果當中,代碼如下:

這段代碼的意思是:“如果得分大于20就廣播一條success的消息,并且停止當前小阿達的所有在執行代碼”
我們廣播了一條消息,那么也要同時有角色來處理這條消息,
我們導入一個“good job”的角色,從事件模塊組里拖入`當接收到success`消息時,執行以下代碼,

同理,我們再設置一下,當分數小于0時的邏輯,讓小阿達廣播一條“failed”的消息

當“good job”接收到“failed”的消息時,

切換回小阿達的腳本,把兩個得分判斷也拖入無限循環的判斷當中,那么小阿達最終的代碼就是:

到這里,我們的《靈藥戰爭》項目就結束了,小朋友們是不是迫不及待的要體驗一下我們的游戲了啊?老師也很想去玩兒了呢,

我們已經學習四個游戲的制作了,已經初步掌握了一些編程的知識了,后面還有更多的游戲等著我們去完成哦,我們下節課見
* * * * *
* * * * *
**阿達老師-孩子身邊的編程專家**
*完整課程請關注阿達老師,主頁里有完整的課程目錄和觀看地址*
- 簡介
- 第二章-星星獵手
- 2.1 玩玩游戲吧
- 2.2 角色到位!
- 2.3 貓咪動起來
- 2.4 海馬動起來
- 2.5 海馬和貓咪碰上啦
- 2.6 抓海星啦!
- 2.7 抓了幾個海星?
- 2.8 更多的海馬過來啦
- 第三章 尋找蛋糕(迷宮類游戲)
- 第一課 使用畫筆繪制迷宮圍墻
- 第二課(1) 鍵盤操作杰瑞移動
- 第二課(2) 解決杰瑞橫穿圍墻問題
- 第三課 甲蟲狂潮
- 第五課 幽靈出沒
- 第六課 收獲金幣
- 第四章 黑洞大作戰
- 4.1 玩玩游戲吧&分析制作思路
- 4.2 level1級別的物體行動
- 4.3 黑洞轉起來
- 4.4 吞噬物體&記錄分數
- 4.5 黑洞變大
- 4.6 leve2 級別的物體
- 4.7 level2吞噬、level3吞噬
- 4.8 游戲做好啦!
- 第五章 靈藥戰爭
- 5.1群魔亂舞
- 5.2靈藥驚現
- 5.3閃轉騰挪
- 5.4大功告成
- 第六章 跳躍的猴子
- 6.1 part1