用Scratch製作打地鼠遊戲(2)

資訊的資訊
1 位粉絲
8 觀看·2026年7月10日
舊的教學影片,但現在還能用
AI 生成·可能包含錯誤
視頻概述
AI 生成本影片詳細教學如何使用 Scratch 製作一款「打地鼠」遊戲,涵蓋從背景設計、角色繪製到程式邏輯實作的全過程,重點在於練習重複性結構、分支結構以及亂數的應用。
這節課我們繼續來說明
Scratch製作打地鼠遊戲
我們是第二次上課
那打地鼠是怎麼樣的一個遊戲呢?我們先複習一下
進到這個專案以後
我們會看到像這樣的畫面
然後
切換到程式裡面
可以看到原來的程式的寫法
我們現在按這個放大
切換模式的按鈕
讓他放大到
整個螢幕
這麼大
然後進行遊戲
讓
大家瞭解
他是怎麼樣
玩的
點選
綠旗就開始
我們看到這裡有兩個
變數一個是打中一個是時間
在30秒內
地鼠會從
這四個區塊裡面不斷的出現
然後使用者只要按下滑鼠
點選到
地鼠
那麼
地鼠就被打中
就會增加打中的次數
看30秒內可以打中多少隻地鼠
時間到了
就沒有辦法
再移動了
好看完了剛才上一次的
打地鼠遊戲的
影片片段我們先講一下本單元的學習重點
本單元學習重點有四個第一個是
Scratch線上編輯的操作
我們會再進一步的說明線上編輯操作上的
一些概念
第二個是重複性結構這個在上一次永英傑講過了我們會再一次的再說明一次
重複性結構的使用
而且會再
產出更多種的重新結構
第三是分支結構的應用
就是
如果怎麼樣的時候做什麼事情這樣的結構
第四個是
亂數的應用
好我們繼續說明Scratch線上編輯器我們同樣的
要
用
輸入Scratch方法找到
scratch.mit.edu
然後開啟上次的作品
我們打上scratch就可以找到scratch的
網站
然後一樣
按創造就可以進入
我們把上一次的作品
放進來
檔案
從你的電腦挑選
然後我們選下載
上一次已經把檔名改成0414
這樣的話就選這個檔案就按開啟
就會把檔案載進來
那常常他會出現這個教程我們可以直接把他關閉就可以了
那這樣子就回到上一次的狀況了
但是老師不從
上一次狀況開始做起
老師呢
是要從這個從頭開始做一遍給大家看
很快的做一遍然後呢
也讓大家複習一下
首先我們要
改變這個背景
背景的話我們先選一個背景
然後我們把原來的空白背景刪掉
然後我們要在這個背景上挖四個地鼠的洞
選擇
地鼠洞的顏色
選好以後用橢圓形畫四個橢圓形
這樣子背景的背景就編輯完成
然後我們再開始編角色首先是角色1當然不是這隻貓咪我們把他刪掉
我們第一個角色是鐵鎚鐵鎚是用畫的我們選擇畫筆來畫
好畫筆畫的時候我們只要用一個圓圈
和一個方框就可以了
外框的部分選擇沒有顏色
好我們直接畫一個圓圈
再畫一個方框
當然顏色你可以自己變你可以自己選擇你喜歡的顏色
或是喜歡的造型去改變這個鐵鎚的造型等等
都是可以的
做好以後我們把整個選起來
稍微給他旋轉一下
鐵鎚的第一個形狀呢叫做預備
第二個形狀叫做打下那我們把他複製
然後一樣
框起來以後稍微再旋轉多一點
然後把他叫做打下
好這樣我們第一個角色就完成了
這裡可以說明一下你這個
角色1你可以改成中文的當然不改也沒有關係因為我們這個程式用不到
第二個就是要找出地鼠來所以我們在這裡選這個角色
在底下
我們可以看到地鼠
好地鼠選進來了以後我們發現地鼠的形狀實在太大了我們必須把他縮小
好一樣把地鼠移到這個
正中心這樣才比較好辨認
然後你可以把地鼠移到位置上
看看跟你的圓圈大小合不合
地鼠一樣有兩個造型
第一個造型叫做
定位第二個造型叫做
打中
那這是第一個造型我們叫把他叫定位
然後我們再複製一份
第二份我們叫打中
打中以後你可以讓他滿天星
但是我用這用個比較簡單的方法
就是畫一個
光環
表示打中
當然你要用其他方式表達也都是可以的
這是地鼠的部分
最後我們講變數
那變數是可以在任何一個地方增加的
我們現在在
城市裡面
在地鼠這個地方增加也是可以的我們變數總共有兩個
一個叫打中一個叫時間
當我們
變數建立之後如果他這個地方有打勾他就會在舞臺上顯示出來
好我們剛才呢重新開始製作快速的示範了一遍
接下來我們就開始
專注在城市方面首先我們來複習重複性結構
重複性結構就像這個樣子
重複多少次
然後
做什麼事情
當然
重複性結構不一定是重複次數他也可以重複做什麼地方
或者是永遠重複
不停的重複
這種模式
我們重複性結構是用在時間的計算
我們從一秒計算到30秒之後會停止
所以我們使用了重複
30次
等待一秒然後把時間
改變一這種方式
現在我們把這一段
城市寫到
Scratch的專案裡面
點選背景的城市我們就可以在這邊轉寫城市
事件一開始的時候是被點一下
然後我們時間
設為0
然後開始重複
30次
這重複30次每次要做什麼事情呢
每一次要先等待一秒鐘
然後再把這個變數改變1
那時間到了以後
我們就把它所有城市全部停止
這樣做完了以後你就可以
按這個律期開始測試他是否正確
接著老師要接著說明
角色1的城市碼
角色1有兩段城市碼
第一段是跟著滑鼠移動
第二段是滑鼠點下以後會換造型
然後又恢復原來的造型
接著老師來解說
角色1城市碼中跟著滑鼠移動的方式
在Scratch裡面有一個叫做定位到鼠標位置的這種
方式
所以我們只要重複無限多次讓
角色定位到鼠標位置
他就會跟著鼠標跑
現在老師就把這段城市碼
寫到
角色的城市裡
我們現在原來是在背景城市所以我們現在
切換到角色1
然後角色1的城市
請注意
我們在寫城市的時候我們都要注意我們是在寫
哪一個
角色或是哪一個背景的城市
當事件
地形被點下的時候
我們就讓他重複無限次
每一次
都定位到滑鼠的位置
好這樣子我們測試一下
好這樣子滑鼠移動
他都會
定位到
滑鼠位置這樣是正確的了
可是我們一開始按開始的時候
總覺得這個鐵錘的位置不太對勁
所以
我們可以增加
定位到00
於是我們
開始的時候
就可以很安然的不會覺得他從上面滑下來的感覺
因為實際上滑鼠
滑鼠原來是在00這個中間這個位置
另外還有一個問題我們的鐵錘跑到了老鼠的後面
所以我們可以增加
外觀
裡面的
位置
圖層移到最上層
我們再測試一次
這樣子鐵錘就在最外面了
好這是角色1的第一部分
接下來我們講角色1的第二部分
就是
滑鼠點下的時候
他把造型換成打下
然後等待0.2秒鐘又把他造型換成預備
我們還是在角色1這裡所以我們可以在這邊寫程式
那我們這次的事件使用的是當角色被點擊
當角色被點擊就是你滑鼠點在角色上因為
鼠標一直跟著
這個角色所以呢我們
滑鼠點下其實就是當角色被點擊
好我們可以這樣的運用
當角色被點擊的時候
我們就
要換造型
造型就換成打下
然後
等待0.2秒鐘
再把造型換成預備
好我們再測試一下程式
開始
點下
這樣就正確了
各位在一開始有沒有看到他一開始造型很怪
這是因為一開始的時候他造型
並沒有
預設到預備
所以我們這裡還要再做一個修改
就是把造型
變成預備
放在一開始的時候
我們再測試一次
這樣子就不會覺得他很奇怪了
底下開始說明角色2的程式碼
角色2
在我們這整個程式當中
是非常複雜的一部分
說是複雜
但其實也只有兩種
第一是打中後要換造型
第二是他的顯示與隱藏的時間
首先我們看打中後換造型
我們怎麼知道
角色2被打中了呢
我們在重複迴圈裡面檢查
如果滑鼠被按下而且碰到了鐵鎚
那麼就是角色2被打中了
打中了以後
就把造型換成打中
然後把變數
打中的次數變成1
然後
播放一個音樂
然後再等待0.5秒然後把他隱藏掉
那在這個過程當中
如果沒有打中的時候我們一直維持著是
定位的造型
好現在老師示範
把這個段程式碼
加到角色裡面去
我們剛纔是角色1現在要寫角色2的程式我們必須點選角色2
一樣的我們事件是當被點擊的時候我們重複了無限多次
然後我們要做一個判斷
這個判斷就是分支結構如果怎麼樣的時候才開始做事情
那我們這次判斷有兩件事情
第一個
是鐵鎚
被按下就是滑鼠被按下
第二個是鐵鎚碰到了地鼠
好我們先做第一個偵測
滑鼠被按下是這一個
然後第二個條件是
碰到
鐵鎚
鐵鎚角色1
好現在這兩個條件要合併起來我們必須使用運算
而且
這段程式碼就是
重複執行當中如果
滑鼠被按下而且也碰到了角色1那麼就表示
鐵鎚打到了
地鼠
那我們就要換造型
換的是地鼠的造型
地鼠換成被打中的造型
為了讓他維持久一點我們稍微停頓
在平常時候地鼠的造型就是
另外一個
定位的造型
好我們現在試試看
所以地鼠是定位的造型
我們打中了以後他會有0.5秒鐘的
打中造型
好接下來
我們繼續把計算分數跟聲音把它加進去
計算分數非常簡單
把變數的打中
改變1就可以了
那麼聲音呢
我們必須要播放聲音
要播放某一個聲音
那我們在音效這邊我們可以選擇聲音
我們原來是選擇Bird的這個聲音
當然你也可以選擇別的聲音
你的聲音要從
聲音這個地方叫出來以後
我們的程式
纔可以播放音效
好
再測試一次
這樣子
打到地鼠
就會有聲音了
接下來老實講角色2的第二段程式也就是他顯示與隱藏的部分
角色2不能一直
不斷的
呈現在畫面上因為
這樣的話
永遠都可以打到地鼠了
我們應該有時候出現
有時候隱藏
那我們現在用最簡單方法
1秒鐘顯示
1秒鐘隱藏
那在這個顯示到隱藏中間的這一秒鐘
使用者是可以拿起他的鐵錘
打
地鼠的
其他時間則是打不到地鼠
我們在程式裡面一樣
是
綠旗的這個事件
好我們同樣綠旗事件是可以有兩個地方的
甚至可以更多
這些事件
他會在
大約同時去進行
好我們一樣是重複無限多次
1秒鐘
顯示
然後在1秒鐘
隱藏
那麼因為有了顯示跟隱藏所以我們原來這一段程式嗎
也要加上隱藏
就是他
等待完0.5秒之後也要隱藏
否則的話這樣子會
變成
很奇怪的一種現象好我們現在
開始測試這段程式
然後他就隱藏
過一會他又顯示出來
又隱藏
好這樣子當然是
如果我們把他複製成
四個地鼠的時候
每一隻都會同時出現每一隻都同時隱藏
這樣是不對的我們要讓他
此起彼落也就是有的快
有的慢
那怎麼辦呢
我們就要運用亂數
在scratch裡面有個隨機取數
多少到多少的這種亂數方法
我們可以讓
等待時間變成
像這樣
等待時間變成像這樣
那麼
可以打地鼠的時間就會不一樣
比較簡單的做法
我們只要做上面出現的這個地方
這個地方就可以了
待會老師示範的時候也只改變這裡
另外一個部分你自己可以去研究你自己改變的方式
好老師將這個等待一秒鐘
改成
從這個0.6秒到1.2秒
那怎麼改的呢我們是使用
的
運算裡面的隨機取得亂數
2到4
然後0.6秒就是0.3乘以
1.2然後0.1.2秒則是
則是這個0.3乘以4所以我們在做一個乘法運算
然後把這個放進去
這樣就可以了
我們再測試一下程式
我發現他會出現沒錯
那麼這樣可能也不是隻有一隻我們可能也不是感覺出來
他快慢的呈現
但是他事實上他是有這個時間差異了
如果你覺得他差異不夠你可以把這個數字改大一點
最後我們要把這個地鼠
複製成
三個三份也就總共會有四隻地鼠
複製後呢要修改他的定位位置
那
這裡有兩個問題大家可以去想一想
如果不要定位可以嗎
如果是可以的話是怎麼做到
第二個如果有五個地洞
那要複製成幾個呢
這個問題留給大家去思考
那底下老師開始示範複製地鼠的部分
現在地鼠是一隻我們要複製成
四隻我們就直接複製
這樣就可以了
在複製的時候因為看不到我們可以讓他顯示出來
又因為我們一開始希望他是隱藏的所以我們點這個隱藏
那麼整個的遊戲就變成這個樣子了
各位會發現這個
地鼠出現的順序好像
很一致那我們可以稍微修改每一隻地鼠的
顯示方式
比如說這個
就可以到5
然後把他改成0.2
這一隻
從3
到6
這樣子
可能效果就會不一樣我們再試一次
我們發現地鼠出現了已經不大一樣的順序了雖然每一個
雖然每一個帶的時間是一樣的
但是呢
出現的順序不一樣你就覺得他是隨機出現了
當然你還可以改等待
不曉得大家有沒有注意到剛纔有一個地方是兩隻
這兩隻
地鼠出現的時候老師按打下
結果
同時兩個都變造型
這是因為
這個
鐵鎚同時碰到兩個所以兩隻程式都判斷他打中
當然這樣不是很合理
解決方法很簡單就是把這個鐵鎚稍微再縮小一點
我們遊戲其實是已經是完成了
但是呢
為了養成良好的程式設計習慣
老師這裡也要提醒一下
我們打中變數並沒有做初始化雖然沒有做初始化他在一開始的時候
他其實
就是
也就是初始化我們現在要做這個初始化而且呢建議把它放在背景裡面
點選背景
然後我們再把一個變數裡面的打中
設為0
這樣子就是初始化
我們必須養成良好習慣
當然還有一個地方就是這個地鼠的位置通常我們也應該
要做初始化也就是把它定位
當然你沒有做也不會有什麼問題每一隻地鼠都分別去做就可以了
沒有做也不會是錯
只是當程式在
移動的時候或者是他在做其他變化的時候沒有做這個初始化
就容易出現其他問題
那這個單元我們到這邊全部講解完畢
有什麼問題可以在底下留言
