貓咪跑步 ( 連續背景 )
這篇文章會介紹,如何在 Scratch 裡使用變數、定位、座標、重複、更換造型...等積木,實作貓咪跑步時,背景會在後方移動的效果 ( 連續背景不間斷的效果 )。
角色設定
在角色編輯區,保留貓咪的角色,使用「上傳」,加入一張連續背景的圖片 ( 參考:Scratch 角色設定 )。
連續背景可先使用範例圖片:下載連結
上傳後可以在角色區域看到一個貓咪角色,以及一張連續背景圖片。
如何設計連續背景
如果要自己設計 Scratch 3 的連續背景圖片,可以參考以下幾個重點:
- 圖片尺寸為 480 x 360,符合 Scratch 3 的舞台大小 ( 太大的圖片上傳會被強制縮小,太小的圖片要手動放大,所以設計剛剛好比較保險 )。
- 圖片的左右兩側不要有複雜的圖案,因為 Scratch 移動角色到邊緣時,會有一些自動計算的突出 ( 無法完全超過邊緣 ),到時候會需要將圖片重疊接合來避開這個狀況。
- 圖片互相組合時,用重疊 20 點的方式預覽,確認重疊之後看起來還是很接近原本的圖片。
積木程式原理 ( 貓咪 )
貓咪的第一組程式,先使用定位和圖層移到最上層,將貓咪放到指定位置,接著設定迴轉方式為「左-右」,避免貓咪旋轉,再來使用重複無限次積木,搭配「如果...那麼」和「偵測鍵盤按下」的功能,按下鍵盤向右鍵以及向左鍵時,讓貓咪角色每 0.1 進行造型切換,並且面朝 90 度 ( 面向右邊 ) 或 -90 度 ( 面向左邊 ),點擊綠旗,按下鍵盤向右鍵以及向左鍵,就會看到貓咪在舞台中原地跑步。
貓咪的第二組程式,負責控制背景的移動 ( 因為到時候背景會有三張,將控制程式撰寫在貓咪角色比較好管理 ),首先建立兩個「所有角色都共用」的變數,分別是「速度」和「消失點」,「速度」表示按下鍵盤時,背景圖片位置改變的幅度,「消失點」表示背景圖片移動到什麼地方就會消失 ( 更換位置 )。
速度變數移動的方向的數值,和貓咪方向相反,這樣才能做到按下向右鍵時,背景往左移動,按下向左鍵時,背景往右移動的效果。
積木程式原理 ( 背景圖 )
將第一張背景圖定位在舞台的右邊,座標使用 (235,0),使用 235 的原因為了和第二張背景圖接合 ( 如果剛好 240 會造成移動切換時出現空隙 ),接著使用重複無限次判斷圖片位置,如果圖片向左移動到消失點,就讓圖片移動到右側的消失點,如果圖片向右移動到消失點,就讓圖片移動到左側的消失點。
點擊綠旗,按下鍵盤的左右鍵,應該就能看到背景在移動。
複製一個背景角色 ( 第二個背景 ),修改定位為 ( -235,0 )。
再複製一個背景角色 ( 第三個背景 ),定位在舞台正中間,圖層放在最下層 ( 避免背景切換時短暫的留白 )。
完成效果
角色的程式全部完成後,點擊綠旗,按下鍵盤的左右鍵,就能看到背景移動,彷彿貓咪在畫面中左右跑來跑去。
範例解答
範例解答:貓咪跑步 ( 連續背景 )
意見回饋
如果有任何建議或問題,可傳送「意見表單」給我,謝謝~