[Script Info] Title: [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:01.32,0:00:04.87,Default,,0000,0000,0000,,Kolejna animacja! Tym razem\Npo ekranie lata piłka. Dialogue: 0,0:00:04.93,0:00:06.80,Default,,0000,0000,0000,,Wiecie, dlaczego. Dialogue: 0,0:00:06.90,0:00:09.66,Default,,0000,0000,0000,,Mamy zmienną „x”\Nokreślającą pozycję piłki, Dialogue: 0,0:00:09.76,0:00:13.79,Default,,0000,0000,0000,,zmienną „speed”,\Nktóra mówi o prędkości Dialogue: 0,0:00:13.89,0:00:17.28,Default,,0000,0000,0000,,i znajomą pętlę rysowania.\NZa każdym razem robimy tło, Dialogue: 0,0:00:17.38,0:00:19.92,Default,,0000,0000,0000,,wybieramy kolory i rysujemy\Nelipsę w „x”. Dialogue: 0,0:00:20.02,0:00:23.20,Default,,0000,0000,0000,,Zawsze zamieniamy „x”\Nna starą wartość „x” Dialogue: 0,0:00:23.30,0:00:24.96,Default,,0000,0000,0000,,plus zmienną „speed”. Dialogue: 0,0:00:25.51,0:00:27.44,Default,,0000,0000,0000,,Jeśli zmniejszę „speed”, Dialogue: 0,0:00:27.54,0:00:30.09,Default,,0000,0000,0000,,wcisnę „restart”, by piłka wróciła... Dialogue: 0,0:00:30.19,0:00:31.70,Default,,0000,0000,0000,,Porusza się wolniej. Dialogue: 0,0:00:31.80,0:00:34.97,Default,,0000,0000,0000,,Przy wartości ujemnej\Nbędzie się cofać, Dialogue: 0,0:00:35.07,0:00:38.03,Default,,0000,0000,0000,,a przy zerze się zatrzyma. Dialogue: 0,0:00:38.13,0:00:40.44,Default,,0000,0000,0000,,Przy każdej prędkości niezerowej Dialogue: 0,0:00:40.54,0:00:42.89,Default,,0000,0000,0000,,piłka w końcu zniknie z ekranu. Dialogue: 0,0:00:42.99,0:00:46.70,Default,,0000,0000,0000,,Mogę ją odzyskać,\Nwciskając „restart”, Dialogue: 0,0:00:47.24,0:00:48.92,Default,,0000,0000,0000,,ale to męczy. Dialogue: 0,0:00:49.02,0:00:52.13,Default,,0000,0000,0000,,Restartujesz, restartujesz... Dialogue: 0,0:00:52.23,0:00:55.44,Default,,0000,0000,0000,,A może tak? Gdy piłka dociera\Ndo prawej krawędzi ekranu, Dialogue: 0,0:00:55.54,0:00:59.42,Default,,0000,0000,0000,,zamiast zniknąć, niech zawróci. Dialogue: 0,0:01:00.38,0:01:06.20,Default,,0000,0000,0000,,Wiem, jak to zrobić. Wystarczy,\Nże „speed” zyska wartość -5. Dialogue: 0,0:01:06.30,0:01:09.75,Default,,0000,0000,0000,,Przy prędkości ujemnej\Npiłka będzie się poruszać wstecz. Dialogue: 0,0:01:09.85,0:01:11.32,Default,,0000,0000,0000,,Jest jednak problem. Dialogue: 0,0:01:11.42,0:01:15.65,Default,,0000,0000,0000,,Prędkość chcę zmieniać tylko wtedy,\Ngdy piłka dotrze do prawej krawędzi. Dialogue: 0,0:01:17.100,0:01:19.46,Default,,0000,0000,0000,,Już to mówiłam. Dialogue: 0,0:01:19.56,0:01:24.68,Default,,0000,0000,0000,,Chcę zmienić prędkość, jeśli piłka\Ndotrze do prawej krawędzi. Dialogue: 0,0:01:25.21,0:01:27.28,Default,,0000,0000,0000,,Potrzebna jest instrukcja warunkowa. Dialogue: 0,0:01:27.38,0:01:31.53,Default,,0000,0000,0000,,Do tej pory komputer wykonywał\Npolecenia bez względu na wszystko. Dialogue: 0,0:01:31.63,0:01:33.19,Default,,0000,0000,0000,,Teraz mogę powiedzieć: Dialogue: 0,0:01:33.29,0:01:38.15,Default,,0000,0000,0000,,„Uruchom ten program,\Nale w konkretnych okolicznościach. Dialogue: 0,0:01:38.25,0:01:42.54,Default,,0000,0000,0000,,Zmień prędkość piłki,\Njeśli dotrze ona do krawędzi”. Dialogue: 0,0:01:42.64,0:01:46.79,Default,,0000,0000,0000,,Tak to wygląda w programie.\NWpisujemy „if”, Dialogue: 0,0:01:46.89,0:01:50.89,Default,,0000,0000,0000,,nawiasy okrągłe i klamry. Dialogue: 0,0:01:50.99,0:01:53.94,Default,,0000,0000,0000,,W nawiasie umieszczamy warunek. Dialogue: 0,0:01:54.04,0:01:57.45,Default,,0000,0000,0000,,W klamrach\N- program do uruchomienia. Dialogue: 0,0:01:57.55,0:02:00.23,Default,,0000,0000,0000,,Jest tak:\N„Jeśli zachodzi ta sytuacja, Dialogue: 0,0:02:00.33,0:02:03.30,Default,,0000,0000,0000,,uruchom program.\NInaczej - nie trudź się”. Dialogue: 0,0:02:03.90,0:02:07.15,Default,,0000,0000,0000,,Tu warunkiem jest dotarcie\Npiłki do prawej krawędzi. Dialogue: 0,0:02:07.25,0:02:09.72,Default,,0000,0000,0000,,Skąd mamy wiedzieć,\Nczy to się stało? Dialogue: 0,0:02:09.82,0:02:13.42,Default,,0000,0000,0000,,Zmienna „x” mówi, gdzie jest piłka. Dialogue: 0,0:02:13.52,0:02:19.30,Default,,0000,0000,0000,,I wiem, że krawędź pola\Nznajduje się w pozycji 400. Dialogue: 0,0:02:20.25,0:02:22.34,Default,,0000,0000,0000,,Zatem zobaczmy. Dialogue: 0,0:02:22.72,0:02:26.08,Default,,0000,0000,0000,,Gdy „x” jest większe od 400, Dialogue: 0,0:02:26.18,0:02:29.84,Default,,0000,0000,0000,,to wiemy, że piłka wyleciała\Npoza krawędź. Dialogue: 0,0:02:29.94,0:02:32.97,Default,,0000,0000,0000,,Zobaczmy, jak to działa.\NW programie Dialogue: 0,0:02:33.07,0:02:37.64,Default,,0000,0000,0000,,tylko zmienimy prędkość. Na -5. Dialogue: 0,0:02:38.13,0:02:41.19,Default,,0000,0000,0000,,Wciśniemy „restart” i zobaczymy. Dialogue: 0,0:02:41.29,0:02:45.37,Default,,0000,0000,0000,,Teraz kiedy piłka dotrze\Ndo prawej krawędzi, odbije się. Dialogue: 0,0:02:45.47,0:02:49.68,Default,,0000,0000,0000,,I znów znika z ekranu. To nic:\Nzrobimy to samo z drugiej strony. Dialogue: 0,0:02:49.78,0:02:52.86,Default,,0000,0000,0000,,Zobaczmy, czy piłka\Ndotarła do lewej krawędzi. Dialogue: 0,0:02:52.96,0:02:56.49,Default,,0000,0000,0000,,To przy „x” mniejszym od 0. Dialogue: 0,0:02:57.77,0:03:03.07,Default,,0000,0000,0000,,Wtedy prędkość ma być dodatnia,\Ndajmy więc 5. Dialogue: 0,0:03:04.01,0:03:07.64,Default,,0000,0000,0000,,Wcisnę „restart” i teraz... Dialogue: 0,0:03:07.74,0:03:09.32,Default,,0000,0000,0000,,bang... Dialogue: 0,0:03:09.42,0:03:11.96,Default,,0000,0000,0000,,bang... Dialogue: 0,0:03:12.06,0:03:13.91,Default,,0000,0000,0000,,bang... Dialogue: 0,0:03:14.72,0:03:16.60,Default,,0000,0000,0000,,Udało się! Dialogue: 0,0:03:17.17,0:03:20.50,Default,,0000,0000,0000,,Sprawdzamy, czy piłka\Nwydostała się za krawędzie. Dialogue: 0,0:03:20.60,0:03:23.47,Default,,0000,0000,0000,,Chyba za daleko! Dialogue: 0,0:03:23.57,0:03:26.01,Default,,0000,0000,0000,,Jeśli pamiętacie, te parametry Dialogue: 0,0:03:26.11,0:03:29.21,Default,,0000,0000,0000,,wyznaczają środek elipsy. Dialogue: 0,0:03:29.31,0:03:32.70,Default,,0000,0000,0000,,Gdy środek dotrze do krawędzi, Dialogue: 0,0:03:32.80,0:03:35.36,Default,,0000,0000,0000,,połowa elipsy jest już za nią. Dialogue: 0,0:03:35.46,0:03:39.50,Default,,0000,0000,0000,,Żeby temu zaradzić,\Nzatrzymamy elipsę wcześniej. Dialogue: 0,0:03:39.60,0:03:44.79,Default,,0000,0000,0000,,Krawędź jest tu, na 400,\Na my chcemy zatrzymać elipsę tu. Dialogue: 0,0:03:44.89,0:03:50.50,Default,,0000,0000,0000,,Widzimy w funkcji, że elipsa\Nma szerokość 50, Dialogue: 0,0:03:51.97,0:03:56.77,Default,,0000,0000,0000,,czyli od środka do krawędzi\Nbędzie 25. Dialogue: 0,0:03:57.93,0:04:01.42,Default,,0000,0000,0000,,Zatrzymamy, gdy środek dotrze do... Dialogue: 0,0:04:01.52,0:04:04.69,Default,,0000,0000,0000,,375. Bo to 400 minus 25. Dialogue: 0,0:04:05.36,0:04:10.59,Default,,0000,0000,0000,,Nie sprawdzamy więc, czy „x”\Njest większe od 400, ale od 375. Dialogue: 0,0:04:10.69,0:04:14.79,Default,,0000,0000,0000,,Ani nie sprawdzamy, czy „x”\Njest mniejsze od 0, ale od 25. Dialogue: 0,0:04:16.88,0:04:20.78,Default,,0000,0000,0000,,Teraz jest doskonale!\NPatrzcie, jak się odbija!