WEBVTT
00:00:00.289 --> 00:00:03.797
Ta đã học cách tạo ra các biến của riêng mình
và sử dụng chúng.
00:00:03.797 --> 00:00:06.657
Bây giờ ta sẽ tìm hiểu về hai biến đặc biệt:
00:00:06.657 --> 00:00:09.353
mouseX và mouseY .
00:00:10.222 --> 00:00:12.671
Bạn không bao giờ phải tự tạo ra các biến này,
00:00:12.671 --> 00:00:15.980
và trên thực tế là không nên, bởi vì chúng đã có sẵn rồi.
00:00:15.980 --> 00:00:19.599
Như bạn thấy, chương trình thiết lập giá trị của các biến này ở hậu trường,
00:00:19.599 --> 00:00:23.758
đảm bảo rằng giá trị của 'mouseX' luôn ở vị trí x của con trỏ,
00:00:23.758 --> 00:00:27.548
và giá trị của 'mouseY' luôn là vị trí y của con trỏ.
00:00:27.548 --> 00:00:30.864
Điều này giúp ta dễ dàng thực hiện những tương tác thú vị
00:00:30.864 --> 00:00:32.559
dựa vào vị trí con trỏ của người dùng.
00:00:33.430 --> 00:00:35.868
Hãy nhìn vào hình elip ta đang vẽ ở đây.
00:00:35.868 --> 00:00:39.366
Ngay lúc này, ta luôn vẽ nó ở tọa độ (200, 200).
00:00:40.612 --> 00:00:43.827
Nếu sử dụng mouseX và mouseY, các biến đặc biệt này,
00:00:44.439 --> 00:00:48.286
thì trong thực tế, ta có thể vẽ nó tại 'mouseX' và 'mouseY'.
00:00:49.337 --> 00:00:52.359
Bây giờ, nếu di chuyển chuột trên nền vẽ, ta có thể thấy
00:00:52.359 --> 00:00:55.291
hình elip luôn được vẽ tại con trỏ -
00:00:55.291 --> 00:00:57.193
Vì vậy, nó vòng quanh theo con trỏ của chúng ta.
00:00:57.193 --> 00:01:00.000
Điều đó thật tuyệt; bạn biết tôi đang vẽ gì không? Whee!
00:01:00.468 --> 00:01:04.125
Nếu có ý định sử dụng 'mouseX' và 'mouseY', ta phải chắc chắn
00:01:04.125 --> 00:01:06.365
rằng mình sử dụng chúng bên trong draw = function ()
00:01:06.365 --> 00:01:08.135
bởi vì hãy xem chuyện gì xảy ra
00:01:09.575 --> 00:01:12.700
khi ta di chuyển hai dòng code ra ngoài draw = function () .
00:01:13.289 --> 00:01:14.436
Bạn thấy khkông?
00:01:14.871 --> 00:01:19.206
Bây giờ code ở đây chỉ được chạy một lần,
00:01:19.206 --> 00:01:21.811
nên hình elip này chỉ được vẽ một lần,
00:01:21.811 --> 00:01:24.036
và nó được vẽ ở bất cứ vị trí nào của con trỏ
00:01:24.036 --> 00:01:26.140
tại thời điểm chương trình bắt đầu chạy
00:01:26.725 --> 00:01:30.337
Đó là lý do tại sao ta cần đặt nó bên trong draw = function () ,
00:01:30.337 --> 00:01:32.459
bởi vì draw = function () là hàm
00:01:32.459 --> 00:01:35.784
được gọi lặp đi lặp lại trong khi chương trình của chúng ta chạy.
00:01:35.784 --> 00:01:39.149
Vì vậy, ta muốn khi được gọi, nó xem giá trị hiện tại
00:01:39.149 --> 00:01:43.246
của mouseX và mouseY là gì, và sau đó nó vẽ hình elip ở vị trí đó.
00:01:43.246 --> 00:01:46.063
Khi bạn hình dung, nó thực sự rất giống với ảnh động -
00:01:46.063 --> 00:01:48.561
nó thay đổi theo thời gian, theo một cách khác.
00:01:49.191 --> 00:01:52.065
Được rồi, bây giờ ta có thể làm tất cả những điều thú vị.
00:01:52.567 --> 00:01:55.724
Chuyện gì sẽ xảy ra nếu, thay vì vẽ nó tại mouseX và mouseY,
00:01:56.353 --> 00:02:02.591
ta vẽ nó ở mouseX nhưng sửa mouseY với giá trị là 300?
00:02:03.231 --> 00:02:07.369
Bây giờ bạn có thể thấy rằng hình elip chỉ theo tọa độ 'x',
00:02:07.369 --> 00:02:09.204
mà bỏ qua mọi thứ với 'y'.
00:02:10.991 --> 00:02:16.873
Sau đó, chuyện gì sẽ xảy ra nếu giờ ta vẽ nó tại mouseX và mouseY, trở lại như cũ,
00:02:16.873 --> 00:02:19.756
Nhưng ta bỏ phần nền đi, chỉ comment nó lại thôi nhỉ?
00:02:20.547 --> 00:02:25.234
Woo ! Bây giờ hãy nhìn xem, tôi đã có cây cọ vẽ ngộ nghĩnh này.
00:02:25.234 --> 00:02:27.031
Điều đó thật tuyệt vời.
00:02:27.031 --> 00:02:30.470
Hoặc, tôi thậm chí có thể sửa các biến này.
00:02:31.029 --> 00:02:32.894
Hãy để tôi đặt hình nền trở lại.
00:02:32.894 --> 00:02:37.703
Tôi sẽ đặt các biến này ở đây, mouseY và mouseX,
00:02:37.703 --> 00:02:39.202
và sau đó xem chuyển gì xảy ra.
00:02:39.202 --> 00:02:41.232
Bây giờ nó dường như thực sự, thực sự kỳ lạ.
00:02:41.232 --> 00:02:43.853
Tôi đã điều khiển con trỏ đang làm ngược lại
00:02:43.854 --> 00:02:45.576
về những gì mong đợi ở chúng.
00:02:45.576 --> 00:02:48.321
Nhưng thật tuyệt, bạn có thể tưởng tượng để tạo ra cả một trò chơi
00:02:48.321 --> 00:02:50.950
để cố gắng vẽ hoặc làm một cái gì đó
00:02:50.950 --> 00:02:52.940
có dùng tới điều khiển con trỏ theo chiều ngược lại.
00:02:53.040 --> 00:00:00.000
Đó là những gì về 'mouseX' và 'mouseY' - quả thực, khá thú vị. Hãy cùng tận hưởng!