圖看不清楚就點一下,用滾輪或下方拉桿放大,按住圖片可以移動,按 × 關閉。
📦 動手前先下載素材
這幾樣是自己畫的,Scratch 素材庫裡找不到,點按鈕下載:
放進專案:
- 🖼️ 背景:滑鼠移到舞台區右下角的「選個背景」→ 點「上傳背景」
- 🧩 角色:滑鼠移到角色區右下角的「選個角色」→ 點「上傳角色」
講義寫「畫」的地方,直接用這些檔案(想自己畫也可以)。上傳的只有造型,程式還是要照講義自己拼。
兩人共用一台電腦,一人按 A、一人按 L,連按讓螃蟹前進,先碰終點線的贏。今天練連按鍵、計時器記成績和碰到終點判輸贏。螃蟹每走一步換造型,做出走路動畫。
今天要做出來的作品

按下綠旗後:
- 裁判說規則,接著倒數 3、2、1,喊「開跑!」。
- 紅螃蟹靠 A 鍵、綠螃蟹靠 L 鍵,按一下走一步,按住不放不會跑。
- 誰先碰到終點線,誰就說「我贏了!」,裁判報出冠軍用了幾秒,輸的那隻再怎麼按都不會動了。
老師上課會先打開
02_奔跑吧螃蟹.sb3按一次綠旗,大家一起看成品長什麼樣子。 📥 下載本堂講義 PDF
今天做什麼
| 做什麼 | 做完會有什麼 |
|---|---|
| 步驟 1:放跑道和終點線 | 紅色跑道、右邊終點線 |
| 步驟 2:放紅螃蟹和裁判 | 一隻螃蟹、左上角裁判 |
| 步驟 3:寫裁判程式 | 說規則、倒數、喊開跑 |
| 步驟 4:寫舞台程式 | 開跑時重置計時器 |
| 步驟 5:寫紅螃蟹程式 | 連按 A 才會跑 |
| 步驟 6:複製綠螃蟹 | 連按 L 控制綠螃蟹 |
| 步驟 7:存檔 | 作品交到 Classroom |
學習目標
- 會用「等待直到」和「鍵被按下?」做出「連按才會前進」
- 會用「計時器重置」和「計時器」記下比賽花了幾秒
- 會用「重複直到 碰到 終點線」判定誰先到終點
- 會用「造型換成下一個」做出走路的動畫,用「圖像效果 顏色」幫角色換顏色
- 複習廣播:裁判喊「開跑」、贏的人喊「結束」
遊戲規則
| 項目 | 規則 |
|---|---|
| 怎麼玩 | 紅螃蟹連按 A,綠螃蟹連按 L,每按一下往前走 15 點 |
| 什麼時候開始 | 裁判喊「開跑!」之後才算,倒數時按了也不會動 |
| 怎麼算贏 | 先碰到終點線的螃蟹贏 |
| 成績 | 從「開跑」到有人碰到終點線,一共幾秒 |
| 什麼時候結束 | 有人贏了就結束,兩隻螃蟹都停下來 |
步驟 1:放跑道和終點線
- 開新專案(檔案 → 新建專案),刪掉小貓。
- 跑道:用這頁最上面下載的「跑道.svg」——滑鼠移到右下角的「選個背景」→「上傳背景」,選這個檔案,舞台就換成紅色跑道。
- 終點線:用下載的「終點線.sprite3」——滑鼠移到角色區右下角的「選個角色」→「上傳角色」。角色名字要是「終點線」,把它拖到舞台右邊,上下蓋滿紅色跑道。
想自己畫也可以:跑道在舞台的「背景」分頁用矩形工具畫;終點線要用「選個角色」→「繪畫」畫一個直直的長方形,角色名字改成「終點線」。
💡 為什麼終點線要是「角色」,不直接畫在背景上?因為等一下螃蟹要問「我碰到終點線了嗎?」,「碰到」積木的下拉選單裡只能選角色。畫在背景上,Scratch 分不出哪一塊是終點線。
💡 為什麼終點線要上下蓋滿跑道?兩隻螃蟹走在不同高度,終點線太短,下面那條跑道的螃蟹會從終點線下面「穿過去」,一直走到舞台邊緣也不會贏。
✅ 檢查點:舞台是紅色跑道,右邊的終點線上下蓋滿跑道。
步驟 2:放紅螃蟹和裁判
- 選個角色 → 找 Crab,名字改成「紅螃蟹」,尺寸改成 50。
- 選個角色 → 找 Devin(一個人),名字改成「裁判」,尺寸 45,拖到左上角的草地上。
⚠️ 注意:先只放一隻螃蟹。綠螃蟹等步驟 6,紅螃蟹程式寫好再複製。
💡 為什麼綠螃蟹不現在就做?綠螃蟹的程式跟紅螃蟹幾乎一樣。等紅螃蟹寫好再「複製」,程式會跟著一起複製過去,只要改三個小地方;現在就複製的話,複製到的是一隻沒有程式的螃蟹,兩隻要各寫一次。
✅ 檢查點:紅螃蟹尺寸 50,裁判尺寸 45、在左上角草地。
步驟 3:寫裁判(人類)的程式——說規則、倒數、喊開跑
這一步要先準備兩樣東西:一個變數、兩則訊息。
① 建變數「成績」:點橘色的變數類,按「建立一個變數」,名字打「成績」,選「適用於所有角色」。

② 建訊息「開跑」「結束」:從黃色的事件類拖出「廣播訊息」,點它的下拉選單 →「新的訊息」,打「開跑」。「當收到訊息」的下拉選單也用同樣的方法建「結束」。

點角色區的裁判,拼兩段:
- 綠旗那段:定位到 x:-205、y:112 → 變數「成績」設為 0 → 說出「紅螃蟹按 A,綠螃蟹按 L,連按才會跑!」3 秒 → 說出 3、2、1 各 1 秒 → 說出「開跑!」→ 廣播訊息「開跑」。
- 收到「結束」那段:當收到訊息「結束」→ 說出〔字串組合「比賽結束!冠軍用了 」和〔字串組合 成績 和「 秒」〕〕。
「字串組合」在綠色的運算類:

照圖檢查裁判的兩段程式:

💡 為什麼「廣播開跑」要放在倒數的最後面?廣播一喊,螃蟹那邊就開始收按鍵了。放在倒數前面,還在數 3、2、1 的時候就有人偷跑。
💡 為什麼要用「字串組合」?「說出」的格子只能放一樣東西。想把「比賽結束!冠軍用了」、成績的數字、「秒」接成一句話,就要用字串組合把它們黏起來;兩個字串組合套在一起,就能接三段。
✅ 檢查點:按綠旗,裁判說規則、倒數 3、2、1,再喊「開跑!」。
步驟 4:舞台——開跑那一刻按下碼錶
點右下角的舞台,拼:當收到訊息「開跑」→ 計時器重置。「計時器重置」在淺藍色的偵測類下面:


💡 為什麼計時器要在「開跑」時重置,不是按綠旗時?計時器就像一個一直在跑的碼錶,Scratch 一打開就開始數了。綠旗後還要說規則、倒數,總共 6 秒;在綠旗就重置,成績會多算這 6 秒。比賽從哪一刻開始,就在那一刻重置。
✅ 檢查點:舞台程式區有「當收到訊息『開跑』→ 計時器重置」。
步驟 5:寫紅螃蟹的程式——連按才會跑
點角色區的紅螃蟹,拼三段。這一步會用到的新積木(點圖可以放大):



- 綠旗那段:定位到 x:-190、y:45(起跑線)→ 造型換成 crab-a → 說出(把格子裡的字刪光,讓它空白)。
- 收到「開跑」那段:
- 先拖「重複直到」,六角形格子放偵測類的「碰到 終點線?」。
- 迴圈裡面依序放四塊:等待直到〈a 鍵被按下?〉 → 移動 15 點 → 造型換成下一個 → 等待直到〈〈a 鍵被按下?〉不成立〉(先把「不成立」放進格子,再把「a 鍵被按下?」塞進「不成立」裡)。
- 迴圈下面接:變數「成績」設為(計時器)→ 說出「我贏了!」→ 廣播訊息「結束」。
- 收到「結束」那段:停止「這個物件的其它程式」(點「停止」的下拉選單改)。
拼好的紅螃蟹長這樣:

💡 為什麼要「等待直到放開」?少了這一塊,按住 A 不放,迴圈每一圈都看到「a 鍵被按下」,螃蟹就自己一路衝到終點,根本不用連按。加上它,每一步都要按下、放開一次,才算按一下。
💡 為什麼不用「當 a 鍵被按下」那個事件積木?那一塊在任何時候都有效:倒數時按會偷跑,比賽結束後按還會繼續走。寫在「收到開跑」裡面的迴圈,開跑之前根本還沒開始聽鍵盤,比賽結束時迴圈也被停掉了。
💡 為什麼用「重複直到 碰到終點線」判定贏?迴圈每一圈都會檢查一次「碰到終點線了嗎?」。還沒碰到就繼續等下一次按鍵;碰到了就跳出迴圈,往下做「我贏了」。迴圈下面的積木,只有贏的時候才會做到。
💡 為什麼每走一步要換下一個造型?Crab 有兩個造型,腳的位置不一樣。一步換一次,看起來就像腳在動;不換的話,螃蟹會像被推著在地上滑。
💡 為什麼收到「結束」要停止「這個物件的其它程式」?輸的那隻還卡在迴圈裡等按鍵。喊了結束卻沒停掉它,輸的人繼續按,還是會碰到終點線、再喊一次「我贏了」。
✅ 檢查點:先測一次:按綠旗,等裁判喊「開跑!」後連按 A,紅螃蟹會一步一步走,碰到終點線說「我贏了!」,裁判報出秒數。
步驟 6:複製出綠螃蟹——只改三個地方
- 在角色區的紅螃蟹上按右鍵 →「複製」,多出來的那隻名字改成「綠螃蟹」。它的三段程式已經跟著複製過來了。
- 點綠螃蟹,改三個地方:
- 綠旗那段「定位到」的 y 改成 -65(下面那條跑道)。
- 兩個「a 鍵被按下?」都改成 l 鍵(點 a 旁邊的小三角形選 l)。
- 綠旗那段最後加上外觀類的「圖像效果 顏色 設為 70」,把紅色變綠色。
改好的綠螃蟹長這樣:

💡 為什麼兩個按鍵積木都要改?「等待直到按下」和「等待直到放開」是一對的。只改一個,綠螃蟹會變成「按 L 走一步、要放開 A 才能走下一步」,兩個人會互相卡住。
💡 為什麼用「設為」不用「改變」?「改變 70」是在現在的顏色上再加 70,每按一次綠旗顏色就變一次;「設為 70」不管按幾次綠旗,都是同一個顏色。
✅ 檢查點:按綠旗,倒數時按 A、L 螃蟹都不能動;開跑後按住 A 不放,紅螃蟹只走一步;連按先到終點的說「我贏了!」,裁判報出秒數,輸的那隻再按也不會動。
步驟 7:存檔
檔案 → 下載到你的電腦,再上傳到 Google Classroom。
💡 線上版 Scratch 沒有登入不會幫你存檔。下課前沒下載,關掉分頁作品就不見了。
✅ 檢查點:作品已下載到電腦,並上傳到 Google Classroom。
收不到、不會動?先查這幾件事
| 狀況 | 多半是 |
|---|---|
| 按了鍵螃蟹完全不動 | 「開跑」的訊息名稱打錯;或裁判的「廣播開跑」沒接上去 |
| 按住不放螃蟹就一路跑到終點 | 少了「等待直到 ○ 鍵被按下?不成立」 |
| 碰到終點線也不會停、一直走到邊緣 | 「碰到」選成了別的東西(例如邊緣、滑鼠);或終點線太短,螃蟹從旁邊穿過去 |
| 成績多了好幾秒 | 計時器重置放在綠旗那段,要改成收到「開跑」才重置 |
| 比完了輸的還能走、還會說我贏了 | 少了「收到結束 → 停止這個物件的其它程式」 |
| 綠螃蟹按 L 走一步就卡住 | 綠螃蟹裡還有一個「a 鍵」沒改成 l |
| 第二次按綠旗「我贏了」還掛在頭上 | 綠旗那段少了「說出(空白)」 |
換成你自己的(必做)
- ☐ 換掉角色:不一定要螃蟹,可以是賽車、馬、兩個同學的頭像
- ☐ 換掉跑道:自己畫一條不一樣的跑道(泳池、太空、操場都可以)
- ☐ 裁判說的話換成你自己的規則說明
- ☐ 至少改一條規則:例如每步走的距離、按的鍵、倒數秒數
挑戰(做完的人選一題)
- ★ 讓輸的那隻螃蟹也說一句話(提示:收到「結束」時,如果沒有碰到終點線,就說「下次再來!」)。
- ★ 加第三隻螃蟹,變成三個人比賽(要再挑一個沒人用的鍵)。
- ★★ 讓螃蟹一定要輪流按兩個鍵(例如 A、S 交替)才會前進,只按同一個鍵不會動。
- ★★ 加一個「最佳紀錄」變數:成績比最佳紀錄少,就更新最佳紀錄並說「破紀錄!」。
- ★★★ 改成一個人跟電腦比:綠螃蟹不用按鍵,改成每隔一小段時間自己走一步(像舊版那樣用「在 1 到 10 間隨機取數」決定步數),看你能不能贏過電腦。
互看檢查表(兩人互相打勾)
- ☐ 倒數的時候偷按,螃蟹不會動
- ☐ 按住不放只會走一步,一定要連按
- ☐ 先碰到終點線的那隻說「我贏了!」,另一隻停下來不能再動
- ☐ 裁判報的秒數,跟自己數的差不多(沒有多算倒數那幾秒)
- ☐ 說得出:螃蟹到底怎麼走路的?(等按下 → 走一步、換造型 → 等放開,一直重複到碰到終點線)
- ☐ 說得出:是誰廣播「開跑」、誰收到;是誰廣播「結束」、誰收到
