10分鍾用scratch寫一個大魚吃小魚的小游戲


第一次給張江小朋友教Scratch課程之前,還在擔心一些概念能不能向小朋友解釋清楚,可上完課發現,我嚴重低估了小朋友的聰明程度,發現現在的孩子相比較自己8、9歲的時候,簡直聰明太多倍了。

 

所以總結了半天,想着干脆來個有分量一點的項目,寫一個Scratch版的大魚吃小魚游戲

 

10分鍾用scratch寫一個大魚吃小魚的小游戲

 

游戲完成界面如上圖,其中藍色的小魚受我們方向鍵的控制左右上下移動,食物鏈順序是大鯊魚 -> 主角(藍色小鯊魚)-> 其他小魚。其他小魚每隔10秒在屏幕隨機位置生成,然后一直橫向移動,碰到邊界就反彈。大鯊魚每30秒隨機產生在屏幕左側,游到右側消失。

 

藍色鯊魚吃到小魚時,小魚消失,同時自己切換到一個張開嘴的動作上,然后切換回來,同時身體變大一點,碰到大鯊魚則游戲結束。

 

在完成復雜項目的時候,最重要的是將事情分解成小目標,比如先完成小魚的隨機生成,再賦予其游動的邏輯,如法炮制大鯊魚,然后再加上碰撞邏輯的處理。

 

首先看小魚的生成

10分鍾用scratch寫一個大魚吃小魚的小游戲

 

這里重復100次,每隔10秒就生成一條小魚。而新生成的小魚,擁有這樣的邏輯。

10分鍾用scratch寫一個大魚吃小魚的小游戲

這里面的代碼,在1-4間取隨機數,然后切換到相應造型,是因為切換不同樣子的小魚。

 

然后調整大小到50%,設置水平運動方式,並且設置如果碰到主角,則發送消息 hit.

 

同理大鯊魚的邏輯也是類似。

10分鍾用scratch寫一個大魚吃小魚的小游戲

只不過運動方式是從屏幕左側開始移動,並且如果碰到主角,則發送“gameover”消息。

 

而主角的邏輯處理中就不一樣了,首先要接收處理前面兩種碰撞事件

10分鍾用scratch寫一個大魚吃小魚的小游戲

上面定義了,碰到小魚時怎樣切換到對應的張開嘴的動作,和碰到大鯊魚時結束游戲。

 

另外再加上主角的方向鍵按鍵處理。

10分鍾用scratch寫一個大魚吃小魚的小游戲

這樣,一個scratch版本的大魚吃小魚游戲就完成了,想想看確實挺簡潔的,比flash腳本要簡單太多了。


免責聲明!

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



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