Scratch 專案:聖誕樹啵啵啵 Pop it!

去年底聖誕節,忙著準備課程和聖誕節專案,還包括了線上 Scratch 體驗活動:聖誕卡片製作;除此之外,有空的時候順手把目前很紅的小遊戲:Pop it 搬到 Scratch 上,也是採用了聖誕主題,雖然現在已經離聖誕節有點距離,連農曆新年已經慶祝完了,還是歡迎大家玩玩看!這個真的是順手作的,美工沒有刻意修,畢竟只是把概念放上來,實體的啵啵啵 Pop it 還是比線上版本療癒啦。

Scratch 聖誕樹紓壓遊戲這裡玩,記得開聲音喔

可以直接前往專案網址:聖誕樹啵啵啵 xmas tree pop it,或是點擊下方的綠旗直接開始,建議用電腦開啟,使用手機的話可能會因為系統關係,位置會有變動喔。

提示:Scratch 都是按綠旗開始,按紅色按鈕結束;另外要開啟喇叭才聽得到聖誕音樂喔!按下綠旗之後就可以開始啵啵啵了,按到一定次數會有特殊鼓勵出現!

專案基本資訊

名稱:聖誕樹啵啵啵 Pop it!

程式難度:簡單

繪圖難度:稍有難度,需要使用漸層色去模擬按鈕按下去以及彈起來的兩種狀態;同時聖誕樹也是使用繪圖自己做出來的,如果按鈕和聖誕樹都是採用網路找圖並且匯入的方式,那這個部份就沒有難度囉!

實作步驟

接著就要來分析一下這個專案,動手做之前先要思考過這些步驟,另外這裡只會敘述概念和基本的做法,不會跟我的專案完全一樣,歡迎自行發揮創意來改編,做出有自己特色的舒壓玩具啵啵啵。

註:改編功能可以到這個網頁,也就是 Scratch 專案頁面,選擇上面的「改編」就可以自由發揮了!

1. 規劃目標和劇本

首先需要先想好我們要做出一個什麼樣的東西,可以先有個大概的輪廓,接著再描述出細節。

主要目標:

在一棵聖誕樹上做出可以啵啵啵的按鈕們,當按下按鈕後會計分。

從這裡可以得知需要:

  • 聖誕樹:上面會放一個個的按鈕們
  • 按鈕:按滑鼠按到後,分數會改變,同時按鈕須要有兩種造型,分別是按下、彈起
額外目標:

除了主要目標之外,可以額外想一些讓這個遊戲不太一樣的特色,舉例來說:

  • 因為是聖誕節,分數累積一定程度時,會有馴鹿出現!
  • 加一顆星星到聖誕樹的頂端,當按下星星時會有另外的特效!

以這兩個額外目標為例,可以得知需要:

  • 馴鹿:平常是隱藏起來的,當分數達到某個值之後就會出現
  • 星星:當被按到時,會有特殊的動作和效果出現

2. 準備材料

當目標和劇本都規劃的差不多,在動手堆Scratch積木程式前,就可以先來準備材料,也就是角色、音樂和舞台。

角色

分別是聖誕樹、按鈕、馴鹿、星星

音樂

遊戲時撥放的背景音樂、按鈕按下去時的音效

舞台

聖誕節適合的雪地背景

3. 寫程式

材料都準備好之後就可以進入Scratch開始寫程式囉!

建立角色

我是採用自行繪製星星、聖誕樹和按鈕,馴鹿是用網路公開分享的圖片。

編寫每個角色的積木程式

星星和按鈕是被滑鼠按到就會有動作,而且會累積分數;馴鹿是在分數到一定程度後會現身慶祝,而Scratch每個角色的程式碼要分開寫,下面用按鈕的程式碼當例子解釋:

這一段程式碼就是要實作在按鈕上面的部份。左邊是〈當綠旗被點擊〉,也就是遊戲開始時,被初始化,回到最初的狀態;而右邊是當按鈕這個角色被滑鼠點擊時要做的是事情,因此用〈當角色被點擊〉起頭,每次被點擊時變數要加1,而且造型要在「被押下」或是「彈起」這兩個造型之間做切換,同時呢,還要撥放被點擊的音效,發出「啵」的一聲。

這樣按鈕的程式碼就完成了,是不是很簡短呢?但是呢聖誕樹上面有數十顆按鈕,我們一個一個去加入同樣的積木程式碼會變得非常的累,可以利用 Scratch 內建的複製功能,在按鈕的角色上面按右鍵選擇複製,就能產生新的一個按鈕,同時帶有我們寫好的程式碼了!新建立好的按鈕用滑鼠移動位置到合適的地方放好,又一顆按鈕就完成囉。

加入音樂、音效和背景

程式核心差不多了之後,就可以加入美工之類讓遊戲更有趣和豐富,這時可以加入自己選的背景圖案和音樂,設定切換的條件等等。

4. 實作與測試

當我們把主要目標和額外目標都試著透過積木程式碼實現的同時,最重要的步驟就是不停的測試和修正,其實這個第4點和第3點是不停交錯的,也就是程式碼寫一段,就需要測試看看有沒有問題,沒有問題再繼續寫下一段程式碼。

千萬不要累積過於大量的程式碼然後再開始測試,要是發現出問題,會非常難以 debug (尋找和修正問題)。

5. 完成、分享

當遊戲做完和測試完都沒有問題,就可以和朋友們分享啦!你玩我的、我玩你的,互相鼓勵這樣才更有樂趣。以這個例子來說,完成後大約會是長這樣:聖誕樹啵啵啵 xmas tree pop it;如果你也有實作或是改編你的版本,也可以和我們分享喔!

另外要不停強調的一點,Scratch 是一個社群,而這個活潑社群的本質就是創作和分享,當你在 Scratch 上面玩別人的遊戲時,覺得不錯也別吝嗇掌聲和讚美哦;同樣的,如果有發現問題或是有建議要跟作者反應,也要記得真誠和禮貌,讓大家得以一起向上提升。

其他 Scratch 專案

當 Scratch 碰上 Wordle!來玩國小英文單字練習遊戲吧!

如果還沒有Scratch帳號