少兒編程Scratch第三講:宇宙大戰.槍戰游戲


小朋友這周的表現還算不錯。周末多數時間都由我陪(bi)着(zhe)做課本上的數學題,后來還學了英語。任重道遠啊,語數外都還得加強,還遠不到自己就能取得好成績的階段。

上周說好這周要做一個發射炮彈的游戲。最后在周日晚上八點學習完英語以后才開始。

目的

目的:設置一艘宇宙飛船或其他角色,實現上下左右移動。每按一次空格鍵即發射一枚炮彈,同時播放聲音,炮彈往屏幕上方飛,直到飛出屏幕。發射子彈、炸彈是很常見的游戲功能。

2018082017093240427

實現方式

宇宙飛船角色的上下左右移動是比較簡單的。我們在接球運動中已經學過了。只需要不停循環,檢測是否有按鍵按下。如果左箭頭按下,X軸就減少10;如果右箭頭按下,X軸就增加10;如果上箭頭按下,Y軸就增加10;如果下箭頭按下,Y軸就減少10。對於這個步驟,小孩表示理解。

這是我們第一次使用發射炮彈的功能。首先要找到一個炮彈的圖,可以選擇球類或者其他物品, 最后我們選擇了一個閃電,但要將閃電轉一下,讓尖尖的頭朝上。

Scratch提供了克隆角色的功能,這是一個強大的功能,就是克隆出另外一個副本出來。克隆體啟動時,可以執行單獨的腳本,即相當於一個子函數,控制這個炮彈克隆體。每按一次按鈕,炮彈就克隆復制自己。然后炮彈往屏幕上放飛行就比較簡單了,就是向上移動一定的位置,或者Y軸增加一定的距離。不停循環即可往上飛行。

逐步改進

制作程序的過程,是一個不斷測試改進的過程。我們在制作過程中,發現了一些問題,並且逐步解決了。

1.    宇宙飛船的范圍確定。 如果不設置范圍,那么左右上下會移出屏幕。因此我們后來增加了一個判斷,即只有在X軸大於-220時,才繼續往左移動,否則就不往左移動了。Y軸類似。這樣通過四個箭頭的移動,保證宇宙飛船一直都不會超出屏幕,同時上方保留一定的空間。

2.    克隆體一直往上飛行,到頂部以后,炸彈會停留在那邊,留下一個尾巴。我們增加了判斷。如果碰到邊緣,就“刪除克隆體”,這樣克隆體碰到邊緣后就消失了。

3.    播放聲音:每次發射炸彈后,系統會播放聲音。播放聲音不能直接在循環中做,因為那樣會做完以后才能繼續發射下一個炮彈,影響效果。因此廣播一個消息,然后在消息中播放音樂。最后我們選擇了一個敲打低音鼓的聲音,這樣發射炸彈以后,就發出類似爆炸的聲音了。

少兒編程-Scratch

·       少兒編程Scratch第二講:奇妙的接球小游戲(2018.01)

·       Scratch第一講:Scratch完美的初體驗(2018.01)

制作步驟

第一步:飛船角色上下左右移動。

1.    加入宇宙飛船角色;選擇星空背景。

2.    造型中,將飛船大小調小一點;設置飛船的中央點為中心。

3.    設置開始事件

4.    直接重復執行,無限循環

5.    加判斷,然后使用偵測 “按鍵 左移鍵是否按下”,那么X坐標增加-11。即飛船向左邊移動。

6.    后來我們增加了一個判斷。如果X坐標大於-220,才將X坐標增加-11,否則就不增加。即到達左邊框以后,飛船不會繼續往左邊移動,保持在屏幕范圍內。

7.    向右,向下和向上,方法類似。

游戲做出來后,小小朋友要來玩。結果她一直都按住箭頭,飛船會超出屏幕。為了解決這個問題,我們就增加了邊框的判斷。

2018082017083942535

2018082017085558141

–飛船:上下左右移動–

第二步:克隆炸彈

8.    加入閃電角色。

9.    造型中,將閃電調小一點;設置飛船的中央點為中心。然后轉動了一下。

10.  設置開始事件

11.  直接重復執行,無限循環

12.  每個循環,都將子彈 “移動”到“飛船”。因為飛船是移動的,所以發射炸彈時,要從飛船位置上發射出來。

13.  增加如果那么的判斷,檢測空格按鍵是否被按下。

14.  如果空格鍵被按下,那么就克隆自己。(這里可以克隆其他角色-例如飛船)。

15.  然后設置:控制>克隆體啟動時。執行這個克隆體的腳本。

a.    首先,外觀>隱藏自己。 (開始的時候,我們是沒有增加隱藏、顯示的步驟的。這樣炸彈就在飛船上面能夠看見。)

b.    然后選擇:運動>面向0°方向,即朝上。這里可以改變方向,例如向右發射炸彈等。(可以選擇不同的方向,測試效果)

c.     然后外觀>顯示自己。

d.    重復執行;移動8步。炸彈即往上飛行。(可以改變移動的速度。)

e.    增加判斷,如果碰到邊緣,那么,刪除克隆體。(如果不刪除,就留一個尾巴在屏幕上方。)

16.  增加聲音:

a.    克隆自己以后,廣播消息1;

b.    當收到消息1時

1)演奏樂器設置為18-鼓

2)彈奏鼓聲2, 長度為0.25節拍。(要使用廣播,否則飛船發射炸彈就要等待聲音播放,導致不連續。)

2018082017090736500

2018082017091962580

-炸彈:克隆自己、克隆后移動、廣播播放聲音。

后續改進

1.    打算在上方隨機出現另外一個角色,例如鬼怪,鬼怪也可以克隆自己。鬼怪按照隨機的方向自上往下運動。(角色隨機從上往下運動,在上一球類發射的課程中已經學過)。如果鬼怪碰到子彈,鬼怪則消失,並且播放打中的音樂,最后播放一個炸彈爆炸的效果。

2.    增加計分器,每消滅一個鬼怪,就增加10分,這樣可以進行游戲了。

分享地址:https://scratch.mit.edu/projects/196376484/

瀏覽器中需要Flash播放器。

這個游戲,並不是由小孩獨自完成。是在家長指導下,由小孩點擊操作完成。目的依然是培養興趣,了解邏輯過程,了解要實現什么功能,使用什么控件,對控件如何操作。

少兒編程-Scratch

·       少兒編程Scratch第二講:奇妙的接球小游戲(2018.01)

·       Scratch第一講:Scratch完美的初體驗(2018.01)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM