WEBVTT
00:00:00.289 --> 00:00:03.797
你已經學會了設計和使用變數的方式
00:00:03.797 --> 00:00:06.657
現在我們要學習兩個特別的變數
00:00:06.657 --> 00:00:09.353
mouseX 和 mouseY
00:00:10.222 --> 00:00:12.671
這兩個變數不需要由你來創造
00:00:12.671 --> 00:00:15.980
其實它們早就存在了
00:00:15.980 --> 00:00:19.599
程式已經預先設定好這兩個變數的值
00:00:19.599 --> 00:00:23.758
確保 mouseX 的值永遠是滑鼠位置的 x 值
00:00:23.758 --> 00:00:27.548
mouseY 的值永遠是滑鼠位置的 y 值
00:00:27.548 --> 00:00:30.864
這項功能可以依據使用者的滑鼠位置
00:00:30.864 --> 00:00:32.559
輕鬆做出好玩的互動模式
00:00:33.430 --> 00:00:35.868
來看看我在這裡畫的圓形
00:00:35.868 --> 00:00:39.366
截至目前,我都將它的位置設定在 200, 200
00:00:40.612 --> 00:00:43.827
如果我使用特殊的變數 mouseX 和 mouseY
00:00:44.439 --> 00:00:48.286
就可以直接把這個圓形畫在 mouseX 和 mouseY
00:00:49.337 --> 00:00:52.359
現在,如果我在畫面上移動滑鼠,你會發現
00:00:52.359 --> 00:00:55.291
我的滑鼠在哪裡,圓形就被移動到那裡
00:00:55.291 --> 00:00:57.193
圓形跟著我的滑鼠跑
00:00:57.193 --> 00:01:00.000
真是太有趣了;你知道我在畫什麼嗎?哈
00:01:00.468 --> 00:01:04.125
在你使用 mouseX 和 mouseY 之前,務必確認
00:01:04.125 --> 00:01:06.365
這兩個變數是寫在 draw = funtion () 裡面
00:01:06.365 --> 00:01:08.205
如果沒有的話會變成這樣
00:01:08.205 --> 00:01:12.700
如果將這兩行程式碼移到 draw = function () 外面
00:01:13.289 --> 00:01:14.436
看到了嗎?
00:01:14.871 --> 00:01:19.206
現在這個指令只會被執行一遍
00:01:19.206 --> 00:01:21.811
所以只畫了一次圓形
00:01:21.811 --> 00:01:24.036
而且被畫在程式一開始
00:01:24.036 --> 00:01:26.140
我的滑鼠位置
00:01:26.725 --> 00:01:30.337
為什麼必須寫在 draw = function () 裡面
00:01:30.337 --> 00:01:32.459
是因為這個函數指令
00:01:32.459 --> 00:01:35.784
在程式執行的當下會被重複呼叫
00:01:35.784 --> 00:01:37.359
我們希望一呼叫指令
00:01:37.359 --> 00:01:43.246
就能擷取當下 mouseX 和 mouseY 的位置並畫出圓形
00:01:43.246 --> 00:01:46.063
這樣來說好了,其實這和動畫很像
00:01:46.063 --> 00:01:48.561
位置隨著時間改變,只是變動方式不同
00:01:49.191 --> 00:01:52.065
現在我們可以做出各式各樣有趣的東西
00:01:52.567 --> 00:01:55.724
如果我不把圓形畫在 mouseX 和 mouseY 上
00:01:56.353 --> 00:02:02.591
而是讓 mouseX 不變,讓 mouseY 固定為 300
會怎麼樣呢?
00:02:03.231 --> 00:02:07.369
圓形只會跟著我滑鼠位置的 x 值移動
00:02:07.369 --> 00:02:09.204
不管滑鼠怎麼上下移動都會忽略 y 值
00:02:10.991 --> 00:02:16.873
現在我繼續將值設定在 mouseX 和 mouseY
00:02:16.873 --> 00:02:19.756
卻不要 background,把它變成註記
00:02:20.547 --> 00:02:25.234
哇!快看,這就像是類似畫筆的有趣功能
00:02:25.234 --> 00:02:27.031
真是太棒了
00:02:27.031 --> 00:02:31.030
或者我們來交換一下這些變數
00:02:31.030 --> 00:02:32.894
先把 background 叫回來
00:02:32.894 --> 00:02:37.703
在這裡交換兩個變數 mouseX 和 mouseY
00:02:37.703 --> 00:02:39.202
看看會有什麼結果
00:02:39.202 --> 00:02:41.232
感覺真的非常怪
00:02:41.232 --> 00:02:43.853
現在滑鼠完全往反方向走
00:02:43.854 --> 00:02:45.576
不受我的控制
00:02:45.576 --> 00:02:48.321
但也挺好玩的,你可以想像設計一個遊戲
00:02:48.321 --> 00:02:50.950
使用顛倒的滑鼠控制
00:02:50.950 --> 00:02:52.940
讓玩家嘗試畫畫或做其它事
00:02:53.040 --> 00:02:58.908
mouseX 和 mouseY 到此結束
非常有趣,希望你喜歡!