網頁

2018年12月1日 星期六

簡單學 Scratch #5 讓貓咪飛


網路上有許多「讓貓咪飛」的例子,而且版本各有差異。今天我們先寫一個基本版本,再逐步增加各種變化!


↓首先將原來的主角《Cat1》換成《Cat1 Flying》


↓再將原來的主角刪除: 按滑鼠右鍵→刪除

↓接著再載入新的角色《Building》


↓《Building》有許多不同的造型,而且是各式各樣的建築物

↓貓咪的程式只有三個積木: 當綠旗被點擊後,就移至頂層,並說出:「起飛吧!」


↓當主角重疊時會有互相遮蔽的問題,左圖: 大樓在貓咪的上方;右圖:貓咪在大樓的上方
我們希望貓咪飛在建築物的前(上)方,因此要將貓咪「圖層上移至頂層」

接著替角色《Building》寫程式....

↓《Building》程式如下
由於貓咪說「起飛吧!」要花2秒鐘,所以在第2行要先等待2秒鐘
程式共有兩個循環,一個是外圍的無限次的重複,一個是內部的100次重複;
由於建築物從最右邊(x=250)移到最左邊(x=-250),x改變了250-(-250)=500,因此重複100次的向左移動5,也就是100x5=500。當移到最左邊後,就改變造型,新造型再從最右邊移到最左邊,依次無限次更替新造型.....。

↓執行結果...............


上述的程式就是貓咪起飛的基本型,有很多可以改良或是變化的地方。

第一個就是貓咪可以飛快點嗎?當然可以!只要將「x改變-5」,修改成「x改變-10」,但是重複100次要跟著改為50次。

另一個就是貓咪可以移動嗎?雖然叫「讓貓咪飛」,事實上是背景的建築物在動。可以增加一些按鍵功能,控制貓咪上下移動。

↓增加貓咪上下鍵功能,使用者可以按上/下鍵讓貓咪向上或向下

另外,還可以在天空中增加一些角色,讓畫面有趣些,例如:白雲、飛鳥......。也就是是說白雲或飛鳥移動速度要比建築物慢,這樣才會有被追上的效果。

↓增加了蝙蝠及其程式


↓實際執行畫面


-- END --

沒有留言:

張貼留言