細胞玩程式

這份文件是網站 - 細胞玩程式(https://jycs.page.link/cell)的文件版,也是網站Programming Cell(https://sites.google.com/view/programming-cells的中文譯本 ,文件化方便使用者列印或是共同編輯該文件。歡迎直接使用或是自行修改以符合您的班級需求。如果您對文件的任何調整可能幫助到更多人,也請分享給大家。

你可以將這份文件列印出來一邊閱讀紙本的操作說明,一邊在Scratch的網頁中操作。

|譯者注:        

|        教材來源採用創用CC-姓名標示授權,允許分享與改作。

|        細胞玩程式改做自ProgrammingCell,採用創用CC-姓名標示授權,允許分享與改作。

介紹

歡迎來到「細胞玩程式」課程!在這裡,你將學會如何創造一個關於人體細胞的小遊戲。

但在正式開始前,先來看看你的細胞可以做些什麼吧!

https://www.youtube.com/watch?v=gFuEo2ccTPA 

我們將會使用線上免費的平台Scratch來製作關於人體細胞的遊戲(https://scratch.mit.edu/)。觀看下方的影片來快速了解我們可以透過Scratch做些什麼。

https://www.youtube.com/watch?v=98awWpkx9UM 

如果這是你第一次使用Scratch,可以先試試看:

準備好開始學習了嗎?點擊「專案一:教菲爾如何爬行


專案一:教菲爾如何爬行

來認識菲爾吧!菲爾是嗜中性球,血液中白血球中的一種。在這個專案中,我們會按下鍵盤的方向鍵來教菲爾如何在身體中到處爬行。首先,先來認識像菲爾一樣的白血球。

白血球的運作機制:https://www.youtube.com/watch?v=bp5CF9l1gRc

實際嗜中性球爬行的影像:https://www.youtube.com/watch?v=ZUUfdP87Ssg 

準備開始

  1. 點選下方連結,打開「Teach Phil to crawl」的專案。https://scratch.mit.edu/projects/138099562/
  2. 如果你已經有Scratch的帳號,點擊頁面右上方的「登入」。如果沒有帳號,點選「加入Scratch」來註冊一個帳號。
  3. 登入後,點擊綠色按鈕「改編」來擁有一份自己的專案副本,現在你可以切換到程式頁面,看到的畫面如下。菲爾已經出現在舞台上,但是他現在還不會做任何事。

教菲爾往右爬

  1. 把下方的三塊積木拖曳到程式區。你可以分別在「事件」和「動作」類別中找到它們。

  1. 在「當空白鍵被按下」的積木上,把「空白鍵」改成「向右鍵」。
  2. 把三塊積木組合起來。
  3. 在你的鍵盤上按下「向右鍵」。你會看到菲爾在每次按鍵按下後往右邊移動。
  4. 按下畫面上方「儲存」按鈕,儲存你的專案。

教菲爾往左、往上、往下爬

  1. 重複「教菲爾往右爬」的步驟,但是把向右鍵改成「向左鍵」,並讓菲爾面朝「-90」度。
  2. 重複「教菲爾往右爬」的步驟,但是把向右鍵改成「向上鍵」,並讓菲爾面朝「0」度。
  3. 重複「教菲爾往右爬」的步驟,但是把向右鍵改成「向下鍵」,並讓菲爾面朝「180」度。
  4. 使用上、下、左、右鍵來控制菲爾,完成後也再確認是否儲存你的專案。

分享專案

按下畫面上方的「分享」,讓其他人也能夠玩你的遊戲,將專案取名為「教菲爾如何爬行」。

自行選擇:教菲爾特殊的連續爬行

使用「面朝()度」和「移動()點」這兩種積木的組合,讓菲爾可以在你按下「空白鍵」後移動一個正方形的路徑。你會需要四個「面朝()度」和四個「移動()點」。並在每一個「移動()點」積木後使用「等待()秒」,這會讓我們更清楚得觀察到菲爾的移動方式。

需要幫忙?你可以參考已經完成的範例專案:

https://sites.google.com/junyiacademy.org/scratch-cell/faq?#h.p_NeKrHjPj3diU 

有什麼是我們還可以更進步的地方?你最喜歡本課程的哪一部分?請讓我們知道:回饋表單

準備好進行下一個專案了嗎?點擊連結前往課程網站:「專案二:移動的細菌」。


專案二:移動的細菌

在第一個專案中我們介紹了菲爾,它是你身體中一種很重要的白血球。除了人類細胞外,你的身體中還包含許多非人類的細胞:細菌。在第二個專案中,我們會教細菌如何往隨意的方向移動。

你知道在你身體中的細菌數量是你人類細胞的十倍多嗎?有一些細菌會致病,與此同時有一些細菌卻會和你的細胞合作,協助人體的機能正常運作。你的身體是由37億個細胞組成的,但細菌卻是單細胞組織,你可以觀看影片來更進一步認識細菌:https://www.youtube.com/watch?v=qCn92mbWxd4 

向右移動

  1. 點選下方連結,打開「moving bacteria」的專案:https://scratch.mit.edu/projects/138136332。點擊「改編」綠色按鈕來擁有一份自己的專案副本。如果你沒有看見「改編」按鈕表示你還沒登入,請先登入你的Scratch帳號。
  2. 把下方的三塊積木拖曳到程式區。你可以分別在「事件」和「動作」類別中找到它們,並把三塊積木組合起來。
  3. 現在點擊綠旗後,細菌應該會向右移動。

任意方向移動

  1. 把下方三塊積木拖曳到程式區。你可以分別在「運算」和「控制」類別中找到它們。

  1. 設定「隨機取數()到()」的範圍,由10到360。把這塊改好的積木放進「面朝()度」積木的框框中取代原本的90度。這會讓細菌隨機選擇一個方向移動,而不是永遠向右。
  2. 把「等待()秒」的積木和其他積木組合在一起。

繼續移動

  1. 把「重複無限次」的積木接在「當綠旗被點擊」下面。這會讓被包在重複無限次裡面的積木永遠被執行,不會停止。
  2. 點擊綠旗來開始專案。你會看到細菌在舞台區中到處移動。
  3. 別忘記點擊畫面上方的「儲存」來儲存專案,取名為「移動的細菌」。

需要幫忙?你可以參考已經完成的範例專案:https://sites.google.com/junyiacademy.org/scratch-cell/faq?#h.p_NeKrHjPj3diU 

有什麼是我們還可以更進步的地方?你最喜歡本課程的哪一部分?請讓我們知道:回饋表單

準備好接受下一個更大的挑戰嗎?在下一個專案中,我們會將合併菲爾和細菌到同一個專案中。點選連結前往課程網站:「專案三:教非爾怎麼吃掉細菌」。


專案三:教菲爾怎麼吃掉細菌

到目前為止你已經做了兩個專案:教菲爾爬行以及可以自己四處移動的細菌。像菲爾一樣的嗜中性球,其中一項重要的工作就是找到在你身體中的細菌並把它吃掉。

觀看一部關於現實中嗜中性球如何追逐細菌並吞噬的影片:https://www.youtube.com/watch?v=2d1SFqJJeVY 

在這個專案中,我們要把前面所製作的兩個專案合併起來,變成一個菲爾吃細菌的小遊戲。這個專案會比較有挑戰性,一些部分會需要你自己動腦想想看。

把菲爾與細菌放到同一個專案中

  1. 回到「移動的細菌」專案,然後點選「切換到程式頁面」
  • 登入Scratch,點選右上方的我的東西,找到「移動的細菌」專案。
  1. 點選螢幕最下方的「背包」。背包這個空間能讓你在專案之間移動角色或是積木等。
  2. 把「細菌」從角色區拖曳到背包視窗中。這個動作是複製一個細菌到背包中。
  3. 打開你的「教菲爾如何爬行」專案。
  4. 我們要另存成一份新的專案。點選檔案,在下拉式選單中選擇「另存成複本」。在專案名稱欄處,把名稱從「教菲爾如何爬行_copy」改成「教菲爾如何吃」。
  5. 再次選擇背包,把「細菌」從背包中重新拖回角色區。現在你的角色區中應該會有兩個角色:菲爾和細菌。
  6. 點擊綠旗開始執行專案。你會看到細菌會自己在舞台區上四處移動,而你可以用方向鍵來控制菲爾的移動方向。

教菲爾如何吃細菌

現在我們要讓細菌在被菲爾碰到之後消失。

  1. 到角色區選擇「細菌」, 如此一來才能看見控制該角色的積木堆。
  2. 把下方四塊積木拖到程式區。你可以分別在「偵測」、「控制」和「外觀」的類別中找到它們。

  1. 把「如果()那麼」積木插入細菌的「重複無限次」積木中。
  2. 把「碰到(鼠標)?」積木中的積木改成「碰到(菲爾)?」,再把改好的積木插入「如果()那麼」中成為他的判斷條件。
  3. 把隱藏插入「如果()那麼」積木中。
  4. 把「顯示」接在「當綠旗被點擊」的下方。
  5. 重新開始專案。現在,當菲爾碰到細菌後,細菌就會消失了!完成後記得儲存專案。

增加額外的功能(可以自行選擇)

  • 讓菲爾在吃掉細菌的時候發出咀嚼的聲音吧!先到音效類別中把「播放音效()」拖到程式區,把這塊積木接在隱藏積木下方。點一下螢幕上方的音效欄。選擇畫面中左下方的喇叭圖案,進入範例音效,在搜尋欄位中輸入「chomp」。回到程式區,現在我們可以把「播放音效()」中的「pop」改成我們剛剛選擇的「chomp」。
  • 只有一隻細菌太單調,來增加更多細菌!在角色區中對著「細菌」按右鍵,選擇「複製」。重複這個步驟幾遍來製造更多細菌。
  • 想想看你會想在專案中加入什麼新的功能呢?寫下完成這個功能所需要的步驟,再找一個人解釋給他聽你的想法。探索Scratch積木可以協助你完成新功能。想知道更多Scratch可以達到的功能,你可以點選上方的「教程」。

更多點子(以下連結是英文網頁):

  • 追蹤細菌移動的軌跡(提示:了解添加擴展中的畫筆功能:點這裡
  • 加入一個計時器,時間會不斷增加直到細菌被吃掉(提示:試試變數廣播功能
  • 讓菲爾可以自己爬行。觀察菲爾需要多少時間才能把細菌都吃光。
  • 讓細菌自己產生新的細菌(增殖)(提示:了解分身功能)

需要幫忙?你可以參考已經完成的範例專案:https://sites.google.com/junyiacademy.org/scratch-cell/faq?#h.p_NeKrHjPj3diU 

有什麼是我們還可以更進步的地方?你最喜歡本課程的哪一部分?還有什麼是我們可以在加入程式細胞?請讓我們知道:回饋表單

恭喜你!你已經完成3個專案!現在你已經有能力可以把從自然課或生物課中得到的靈感變成一個專案。請分享你完成的專案到Programming Cells - student projects 創作坊中,讓大家都能看見!


Licenses and Materials Credits

授權與內容致謝

本教學案例源自Programming CellsAlison Criss, Ava Saucerman, Bella Saucerman, Gavin Saucerman, Jeff Saucerman, Maya Saucerman, Bethany Wissmann所創作;中文譯文由呂祈璘、均一教育平台進行中文翻譯與改作,並遵循創用CC授權 - 姓名標示 4.0 國際 (CC BY 4.0) 釋出。

文件製作:均一教育平台