WEBVTT 00:00:01.004 --> 00:00:04.312 Programując, można uwzględnić bardziej złożone warunki. 00:00:04.412 --> 00:00:09.044 Zademonstruję to na przykładzie starej gry. Cztery kwadraty. 00:00:09.144 --> 00:00:11.656 Są cztery kwadraty (trafna nazwa!), 00:00:11.756 --> 00:00:14.721 a wy, stojąc w jednym, odbijacie piłkę. 00:00:14.821 --> 00:00:17.199 Rysuję elipsę tam, gdzie jest myszka. 00:00:17.299 --> 00:00:18.877 To nasza piłka. 00:00:18.977 --> 00:00:23.359 Chcę zmieniać kolor kwadratu, w którym jest piłka. 00:00:23.916 --> 00:00:27.890 Potrzebna mi instrukcja warunkowa, bo chcę to robić tylko wtedy, 00:00:27.990 --> 00:00:29.698 gdy jestem nad tym kwadratem. 00:00:31.108 --> 00:00:33.838 Zacznijmy więc od kwadratu. 00:00:34.740 --> 00:00:40.197 Skopiuję to... tylko dam białe wypełnienie. 00:00:40.297 --> 00:00:42.918 Dobrze. A teraz - instrukcja warunkowa. 00:00:45.232 --> 00:00:48.125 Klamry dopełniają się same. 00:00:48.500 --> 00:00:50.159 Muszę dać to do środka. 00:00:50.259 --> 00:00:53.498 Dobrze. Gdzie ma być ten kwadrat? 00:00:53.986 --> 00:00:56.527 Chcę to zrobić, 00:00:56.627 --> 00:01:00.004 gdy „mouseX” będzie mniejsze od 200. 00:01:02.803 --> 00:01:06.588 To działa, ale kiedy zejdę tutaj, kolor zostaje. 00:01:07.128 --> 00:01:09.244 Muszę też kontrolować „mouseY”. 00:01:10.312 --> 00:01:12.539 Jak zapanować nad jednym i drugim? 00:01:12.639 --> 00:01:14.448 Temu służy operator „AND” (i). 00:01:14.548 --> 00:01:17.730 Używamy go, gdy chcemy połączyć różne warunki. 00:01:17.830 --> 00:01:20.433 Piszemy „&&”, 00:01:20.533 --> 00:01:23.333 a potem następny warunek, 00:01:23.433 --> 00:01:26.006 np.„ mouseY < 200” 00:01:26.464 --> 00:01:30.302 Tutaj kolor już się nie zmienia, a tu - tak. 00:01:30.463 --> 00:01:31.364 Super! 00:01:31.464 --> 00:01:35.933 Zróbmy drugi kwadrat, udowodnijmy, że to działa. 00:01:36.352 --> 00:01:39.242 Trzeba zmienić parę rzeczy. 00:01:39.342 --> 00:01:40.681 Weźmy ten kwadrat. 00:01:42.063 --> 00:01:45.488 Zmienimy warunki, żeby nie był stale jasny. 00:01:45.588 --> 00:01:48.663 Teraz „mouseX” musi być... 00:01:49.273 --> 00:01:53.575 większe od 200, a „mouseY” - mniejsze od 200. 00:01:53.675 --> 00:01:55.333 Spójrzcie, jak pięknie! 00:01:55.433 --> 00:01:57.825 W tej grze, 00:01:57.925 --> 00:01:59.838 gdy piłka trafi w linie 00:01:59.938 --> 00:02:04.249 pośrodku i na bokach, krzyczymy „EdgeBall!” (krawędź). 00:02:04.760 --> 00:02:06.339 Chcę to tu zrobić. 00:02:07.365 --> 00:02:10.378 Najpierw napiszmy „Edge ball”. 00:02:10.479 --> 00:02:14.036 Pośrodku, na czerwono. 00:02:16.554 --> 00:02:19.853 Ma to się dziać, gdy piłka będzie na krawędzi. 00:02:19.953 --> 00:02:21.177 Dodamy nasze „jeśli” 00:02:22.407 --> 00:02:24.683 i włożymy ten fragment do środka. 00:02:26.007 --> 00:02:28.481 Zatem… kiedy to ma się stać? 00:02:28.581 --> 00:02:29.948 Krawędź pośrodku... 00:02:30.048 --> 00:02:33.577 to tam, gdzie „mouseX”... 00:02:34.544 --> 00:02:36.171 wynosi 200. 00:02:36.920 --> 00:02:40.240 Zobaczmy. Czy dostanę „Edgeball”? 00:02:41.425 --> 00:02:43.236 Jest! Edgeball! 00:02:43.691 --> 00:02:47.021 OK. To działa... 00:02:47.121 --> 00:02:49.528 przy tej linii środkowej. 00:02:49.628 --> 00:02:51.834 Ale chcę, żeby działało też tutaj. 00:02:52.571 --> 00:02:56.034 Zatem musi być... 00:02:56.532 --> 00:02:59.693 „mouseY == 200”, 00:02:59.793 --> 00:03:01.487 bo tu jest środkowa linia. 00:03:02.167 --> 00:03:03.553 Zobaczmy. 00:03:04.267 --> 00:03:08.019 Nie działa. Nic. 00:03:08.119 --> 00:03:10.442 Tylko jedno. Pośrodku. 00:03:10.542 --> 00:03:12.769 Użyłam operatora „AND”, 00:03:13.213 --> 00:03:16.256 więc jedno i drugie musi być prawdą. 00:03:16.356 --> 00:03:17.903 Czyli tylko w środku. 00:03:18.003 --> 00:03:21.943 A ma to działać, gdy chociaż jedno jest prawdą. 00:03:22.043 --> 00:03:24.451 Użyjemy operatora „OR” (lub). 00:03:24.551 --> 00:03:26.541 Zapisujemy go jako „||” 00:03:27.075 --> 00:03:31.324 i nazywamy „rurką”. Pewnie takich nie używaliście. 00:03:32.067 --> 00:03:35.248 Spójrzcie na prawy górny róg klawiatury. 00:03:36.068 --> 00:03:38.244 Obyście mieli ten klawisz! 00:03:39.335 --> 00:03:42.059 Jest? Sprawdźmy, czy to działa. 00:03:42.159 --> 00:03:46.030 Tu jest dobrze, tu też, i tu. Pięknie! 00:03:46.535 --> 00:03:49.250 Możemy dodawać więcej warunków 00:03:49.350 --> 00:03:52.421 z operatorami „AND” i „OR”. Ile chcecie! 00:03:52.521 --> 00:03:55.563 Można dodać nawet 60 różnych warunków! 00:03:55.663 --> 00:03:58.418 Nie zajęliśmy się jeszcze krawędziami... 00:03:58.518 --> 00:04:01.359 Powiedzmy: jeśli „mouseX” 00:04:01.833 --> 00:04:04.221 jest mniejsze od 3... 00:04:04.622 --> 00:04:08.825 Powinna więc to być... Ta krawędź. Bardzo dobrze! 00:04:08.925 --> 00:04:14.281 Lub „mouseX” jest większe od 397. 00:04:14.977 --> 00:04:17.250 I gotowe. Pięknie! 00:04:17.351 --> 00:04:19.761 Zróbmy to dla wszystkich krawędzi. 00:04:21.500 --> 00:04:23.778 Tak! Mamy AND (&&) i OR (||). 00:04:23.878 --> 00:04:27.749 W programach możecie zawierać coraz bardziej skomplikowane warunki. 00:04:27.849 --> 00:04:30.675 I dobrze, bo świat jest skomplikowany!