更多滑鼠互動介面 (影片版)
-
0:01 - 0:02在上一堂課裡
-
0:02 - 0:05我們示範了如何使用繪圖函數和if述句
-
0:05 - 0:07讓一顆球從牆上反彈
-
0:07 - 0:08讓我們來複習
-
0:08 - 0:12首先,我們為球的位置和速度設立初始變異數
-
0:12 - 0:15然後,在繪圖函數裡,特別是那個
-
0:15 - 0:17在你的程式運行時不斷被叫出的程式
-
0:17 - 0:21我們將背景重新上色,然後在畫布上畫上一個圓形
-
0:21 - 0:24然後我們根據變異數的位置、時間
-
0:24 - 0:27與其互相影響的情形,來放置缺口
-
0:27 - 0:29現在,沒有 if 述句
-
0:29 - 0:31我們的球只會一直前進
-
0:31 - 0:33直到我們按下重新開始
-
0:33 - 0:37所以我們在下面這裡加入兩個 if 述句來確認並觀察
-
0:37 - 0:40球是在螢幕右側
-
0:40 - 0:41還是螢幕左側
-
0:42 - 0:44據此,我們將速度變換至正或是負
-
0:44 - 0:46因此球基本上會反彈回來
-
0:46 - 0:50所以現在我們只需要讓這個球永遠來回反彈
-
0:50 - 0:51所以這個蠻酷的
-
0:51 - 0:53而且用這個方法
-
0:53 - 0:55我們可以做出非常多很酷的動畫
-
0:55 - 0:58現在,我想要加入使用者互動到這個課程
-
0:58 - 1:00現在,這個課程就是一場TV秀
-
1:00 - 1:02如果你將它給一個朋友
-
1:02 - 1:04而且你的朋友不知道如何寫程式
-
1:04 - 1:06他們無法真的與它互動
-
1:06 - 1:08他們能做的事只有看,雖然也是蠻酷的
-
1:08 - 1:11不過如果他們能做什麼事情,這整件事會變得更酷
-
1:11 - 1:14所以,讓我們來給使用者一些方法來控制它
-
1:14 - 1:15記住稍早以前,我們學了
-
1:15 - 1:20兩個特別的全球性變異數叫做 “鼠標X” 和 "鼠標Y"
-
1:21 - 1:23這些變異數會產生數字
-
1:23 - 1:26告訴我們使用者滑鼠目前的所在位置
-
1:26 - 1:29這是一個將課程互動化很好的一個方法
-
1:29 - 1:31讓我們來看看可以如何使用它們
-
1:31 - 1:35我們應當將之使用在繪圖函數的某處
-
1:35 - 1:37因為他們是唯一的程式碼
-
1:37 - 1:39他們在程式進行時不斷的被叫出
-
1:40 - 1:43其餘在繪圖函數外的都只有被叫到一次
-
1:43 - 1:45當一個程式開始時
-
1:45 - 1:48所以,此時使用鼠標X 和鼠標Y是不合理的
-
1:48 - 1:51使用者沒有機會去跟他們互動
-
1:51 - 1:57現在,我們將圖裡的球往下移200個像素
-
1:57 - 2:01我們何不用鼠標Y取代它?
-
2:01 - 2:03因為那是Y位置,對吧?
-
2:03 - 2:08用這個方法可以獨立地將y位置
-
2:08 - 2:10讓我們來試試看
-
2:10 - 2:12只靠著將我的游標上下移動
-
2:12 - 2:15我可以改變球前進的路線
-
2:15 - 2:16蠻酷的
-
2:16 - 2:20但是,我也想要使用鼠標X,所以我該如何使用呢?
-
2:20 - 2:22我們何不直接製作另一顆球
-
2:22 - 2:26然後使那顆球行進上下相反的方向
-
2:26 - 2:31然後我們讓使用者控制它的“x”方位
-
2:31 - 2:38所以我們就是做了相反的事情,我們可以說橢圓滑鼠X 位於 50,50
-
2:40 - 2:42可以嗎?試試看吧!
-
2:42 - 2:47我已經控制這兩顆球以垂直的方向移動
-
2:49 - 2:53但是,我仍然不滿意,我想要給使用者更多控制能力
-
2:53 - 2:58我想要給使用者啟動第二顆球的能力
-
2:58 - 3:02僅僅按一下滑鼠,就使第二顆球存在
-
3:02 - 3:04然而,我需要找出方法
-
3:04 - 3:08如何分辨使用者正在按滑鼠
-
3:08 - 3:13令人感激的是,我們有一個特別的布林變異數可以使用
-
3:13 - 3:18名叫 《點擊滑鼠》。我們可以在 if 述句裡使用它
-
3:18 - 3:22讓我們來看看。這是我們的第二顆球
-
3:22 - 3:27所以我們可以說 "如果點擊滑鼠"
-
3:27 - 3:32然後我們會將圓形移到這裡
-
3:32 - 3:34所以這裡在做的事情是
-
3:34 - 3:39告訴這個程式我們只有在這是對的時畫這個圓
-
3:39 - 3:43那《點擊滑鼠》就只會在
-
3:43 - 3:46使用者按下滑鼠時有效
-
3:46 - 3:50我們來試試看,tada!
-
3:50 - 3:53所以我們現在可以只讓球在我按下時出現
-
3:53 - 3:56它在這個平行的宇宙縮放
-
3:56 - 3:59進入!進入!進入!這太美好了
-
4:00 - 4:04所以,這個變異數有趣的事情是
-
4:04 - 4:08《點擊滑鼠》會根據使用者做的事情改變
-
4:08 - 4:10而不是根據我們的程式做了什麼
-
4:10 - 4:13而因為繪圖函數被重複呼叫一次又一次,
-
4:13 - 4:16程式的輸出也會隨著時間而改變
-
4:16 - 4:19附帶著使用者的一些輸入
-
4:19 - 4:22混合著 if 述句跟《點擊滑鼠》的威力,
-
4:22 - 4:24你可以得到任何你想要的東西
-
4:24 - 4:27像是製作很棒的東西例如按鈕或者是繪圖程式
-
4:27 - 4:28好耶!
Ariel Hsu edited Chinese, Traditional subtitles for More Mouse Interaction (Video Version) | ||
Sean Hsu edited Chinese, Traditional subtitles for More Mouse Interaction (Video Version) | ||
Sean Hsu edited Chinese, Traditional subtitles for More Mouse Interaction (Video Version) | ||
Ariel Hsu edited Chinese, Traditional subtitles for More Mouse Interaction (Video Version) | ||
En-Chi Chang edited Chinese, Traditional subtitles for More Mouse Interaction (Video Version) | ||
En-Chi Chang edited Chinese, Traditional subtitles for More Mouse Interaction (Video Version) |