[Script Info] Title: [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:01.16,0:00:04.44,Default,,0000,0000,0000,,Wiecie już, jak stworzyć tablicę\Ni dostać się do niej. Dialogue: 0,0:00:04.54,0:00:06.32,Default,,0000,0000,0000,,Tak jak pozostałe zmienne, Dialogue: 0,0:00:06.42,0:00:08.57,Default,,0000,0000,0000,,tablice mają świetną cechę: Dialogue: 0,0:00:08.67,0:00:10.71,Default,,0000,0000,0000,,możemy je zmieniać dynamicznie Dialogue: 0,0:00:10.81,0:00:13.04,Default,,0000,0000,0000,,w trakcie działania programu. Dialogue: 0,0:00:13.14,0:00:15.35,Default,,0000,0000,0000,,Pokażę, o co mi chodzi. Dialogue: 0,0:00:15.45,0:00:20.71,Default,,0000,0000,0000,,Ten program wyświetla\NHopper z balonikami. Ślicznie! Dialogue: 0,0:00:21.41,0:00:25.10,Default,,0000,0000,0000,,Mamy tablicę pozycji „x”, Dialogue: 0,0:00:25.20,0:00:27.02,Default,,0000,0000,0000,,zawierającą dwie liczby, Dialogue: 0,0:00:27.12,0:00:29.68,Default,,0000,0000,0000,,które pokazują,\Ngdzie mają być baloniki. Dialogue: 0,0:00:29.78,0:00:32.05,Default,,0000,0000,0000,,A tutaj mamy pętlę Dialogue: 0,0:00:32.15,0:00:35.48,Default,,0000,0000,0000,,przechodzącą przez każdy\Nelement w tej tablicy. Dialogue: 0,0:00:35.58,0:00:40.31,Default,,0000,0000,0000,,Dla każdego elementu, pętla rysuje\Nkreskę od „x” do ręki Hopper, Dialogue: 0,0:00:40.41,0:00:43.82,Default,,0000,0000,0000,,a potem w pozycji „x”\Nrysuje elipsę Dialogue: 0,0:00:43.92,0:00:47.42,Default,,0000,0000,0000,,o wymiarach 30 na 40 pikseli.\NNasz balonik. Dialogue: 0,0:00:47.52,0:00:48.69,Default,,0000,0000,0000,,Fajnie! Dialogue: 0,0:00:48.79,0:00:51.22,Default,,0000,0000,0000,,Już wiemy, jak to działa. Dialogue: 0,0:00:51.32,0:00:54.12,Default,,0000,0000,0000,,Chcąc wyświetlić kolejny balonik, Dialogue: 0,0:00:54.22,0:00:56.77,Default,,0000,0000,0000,,dodamy liczbę do tablicy. Dialogue: 0,0:00:56.87,0:00:58.54,Default,,0000,0000,0000,,Np. - 300. Dialogue: 0,0:00:58.64,0:01:02.09,Default,,0000,0000,0000,,Pięknie! Teraz mamy trzy baloniki,\Na Hopper się cieszy. Dialogue: 0,0:01:03.06,0:01:06.92,Default,,0000,0000,0000,,Ale powiedzmy, że chcemy\Nnauczyć użytkownika, Dialogue: 0,0:01:07.02,0:01:08.50,Default,,0000,0000,0000,,który nie programuje, Dialogue: 0,0:01:08.60,0:01:10.75,Default,,0000,0000,0000,,jak dodawać nowe baloniki. Dialogue: 0,0:01:10.85,0:01:14.32,Default,,0000,0000,0000,,Program powinien\Nmówić użytkownikowi: Dialogue: 0,0:01:14.42,0:01:17.86,Default,,0000,0000,0000,,„Kliknij tam, gdzie chcesz balonik,\Na on się pokaże”. Dialogue: 0,0:01:17.96,0:01:20.50,Default,,0000,0000,0000,,Byłoby świetnie, prawda? Tak sądzę. Dialogue: 0,0:01:20.60,0:01:23.60,Default,,0000,0000,0000,,A zatem... jak to zrobić? Dialogue: 0,0:01:23.70,0:01:26.40,Default,,0000,0000,0000,,Chcemy, by program\Nzmieniał się w czasie. Dialogue: 0,0:01:26.50,0:01:28.27,Default,,0000,0000,0000,,Gdy użytkownik kliknie, Dialogue: 0,0:01:28.37,0:01:30.42,Default,,0000,0000,0000,,w tym miejscu pokaże się balonik. Dialogue: 0,0:01:30.52,0:01:34.71,Default,,0000,0000,0000,,Najpierw włóżmy wszystko\Nw funkcję „draw”, Dialogue: 0,0:01:34.81,0:01:37.80,Default,,0000,0000,0000,,żeby ułatwić zmiany. Dialogue: 0,0:01:38.31,0:01:40.40,Default,,0000,0000,0000,,Zacznijmy tutaj. Dialogue: 0,0:01:40.50,0:01:43.14,Default,,0000,0000,0000,,I jeszcze to... Świetnie! Dialogue: 0,0:01:43.24,0:01:48.34,Default,,0000,0000,0000,,Teraz sprawdzimy, czy użytkownik\Nwłaśnie wciska przycisk myszki. Dialogue: 0,0:01:48.44,0:01:50.25,Default,,0000,0000,0000,,Przyda się instrukcja warunkowa. Dialogue: 0,0:01:50.35,0:01:52.73,Default,,0000,0000,0000,,Jeśli przycisk jest wciśnięty, Dialogue: 0,0:01:53.80,0:01:56.56,Default,,0000,0000,0000,,to program musi coś zrobić. Co? Dialogue: 0,0:01:56.66,0:02:01.46,Default,,0000,0000,0000,,Po wciśnięciu przycisku\Nniech program dodaje coś do tablicy. Dialogue: 0,0:02:01.56,0:02:04.34,Default,,0000,0000,0000,,Zróbmy z powrotem dwa elementy. Dialogue: 0,0:02:04.44,0:02:07.90,Default,,0000,0000,0000,,Chcemy dodać liczbę do tablicy. Dialogue: 0,0:02:07.100,0:02:10.75,Default,,0000,0000,0000,,Pokażę wam jeden sposób. Dialogue: 0,0:02:10.85,0:02:13.14,Default,,0000,0000,0000,,Piszemy: xPositions... Dialogue: 0,0:02:13.24,0:02:15.12,Default,,0000,0000,0000,,nawias kwadratowy, dwójka... Dialogue: 0,0:02:15.65,0:02:17.69,Default,,0000,0000,0000,,= mouseX. Dialogue: 0,0:02:18.44,0:02:21.15,Default,,0000,0000,0000,,Zaraz zobaczycie, że to działa. Dialogue: 0,0:02:22.22,0:02:25.19,Default,,0000,0000,0000,,Kliknęłam i pokazał się balonik. Dialogue: 0,0:02:25.29,0:02:27.47,Default,,0000,0000,0000,,Co zrobił program? Powiedział... Dialogue: 0,0:02:28.54,0:02:30.38,Default,,0000,0000,0000,,xPositions[2] mówi: Dialogue: 0,0:02:30.48,0:02:34.27,Default,,0000,0000,0000,,„Znajdź tablicę\Ni element z numerem 2”. Dialogue: 0,0:02:34.37,0:02:38.43,Default,,0000,0000,0000,,Pamiętajcie, że to trzeci element,\Nbo tablica zaczyna się od 0. Dialogue: 0,0:02:38.53,0:02:42.00,Default,,0000,0000,0000,,Ale trzeciego elementu nie ma.\NTo miejsce jest puste. Dialogue: 0,0:02:42.10,0:02:45.70,Default,,0000,0000,0000,,Program mówi: „Znajdź miejsce\Ni ustaw mouseX”. Dialogue: 0,0:02:45.80,0:02:47.74,Default,,0000,0000,0000,,Ponieważ nie ma tam nic, Dialogue: 0,0:02:47.84,0:02:51.32,Default,,0000,0000,0000,,po prostu pojawia się\N„mouseX”. Dialogue: 0,0:02:51.42,0:02:54.50,Default,,0000,0000,0000,,Teraz tablica ma trzy elementy. Dialogue: 0,0:02:54.60,0:02:59.58,Default,,0000,0000,0000,,A pętla FOR, przechodząc tędy,\Nnarysuje trzeci balonik. Dialogue: 0,0:03:00.46,0:03:03.83,Default,,0000,0000,0000,,Super! Poklikam jeszcze,\Nzobaczycie, jak to działa. Dialogue: 0,0:03:03.93,0:03:06.29,Default,,0000,0000,0000,,Za każdym razem, gdy klikam, Dialogue: 0,0:03:06.39,0:03:08.71,Default,,0000,0000,0000,,pojawia się trzeci balonik. Dialogue: 0,0:03:08.81,0:03:10.47,Default,,0000,0000,0000,,Tam, gdzie kliknę myszką. Dialogue: 0,0:03:11.40,0:03:14.02,Default,,0000,0000,0000,,To dlatego, że ciągle zmieniamy... Dialogue: 0,0:03:14.84,0:03:18.83,Default,,0000,0000,0000,,miejsce drugie. Z numerem 2. Dialogue: 0,0:03:18.93,0:03:23.15,Default,,0000,0000,0000,,Ciągle to zmieniamy,\Npodając bieżącą pozycję mouseX. Dialogue: 0,0:03:23.25,0:03:26.10,Default,,0000,0000,0000,,Zawsze będą tylko trzy baloniki, Dialogue: 0,0:03:26.20,0:03:28.23,Default,,0000,0000,0000,,ten w punkcie 0, Dialogue: 0,0:03:28.33,0:03:31.16,Default,,0000,0000,0000,,ten w punkcie 1...\NI stale zmieniamy... Dialogue: 0,0:03:32.18,0:03:34.13,Default,,0000,0000,0000,,punkt nr 2. W porządku? Dialogue: 0,0:03:34.75,0:03:35.88,Default,,0000,0000,0000,,To jest dobre, Dialogue: 0,0:03:35.98,0:03:39.87,Default,,0000,0000,0000,,ale chcemy, żeby użytkownik\Nrobił masę baloników! Dialogue: 0,0:03:39.97,0:03:42.63,Default,,0000,0000,0000,,Każde kliknięcie to nowy balonik. Dialogue: 0,0:03:43.38,0:03:47.28,Default,,0000,0000,0000,,Czyli musimy stale zwiększać Dialogue: 0,0:03:47.38,0:03:50.60,Default,,0000,0000,0000,,numer elementu tablicy,\Nw którym to przechowujemy. Dialogue: 0,0:03:50.70,0:03:55.50,Default,,0000,0000,0000,,Nie zawsze ma być 2,\Ntylko 2, 3, 4, 5, 6 itd. Dialogue: 0,0:03:56.22,0:03:59.18,Default,,0000,0000,0000,,Zrobimy to dzięki\Nzmiennej liczącej. Dialogue: 0,0:03:59.28,0:04:00.79,Default,,0000,0000,0000,,Napiszemy „newInd=2”. Dialogue: 0,0:04:00.89,0:04:02.44,Default,,0000,0000,0000,,Od tego zaczniemy. Dialogue: 0,0:04:02.54,0:04:05.60,Default,,0000,0000,0000,,Tu napiszemy „newInd” zamiast „2”, Dialogue: 0,0:04:05.70,0:04:09.48,Default,,0000,0000,0000,,ale docelowo ma być „newInd++”. Dialogue: 0,0:04:09.58,0:04:11.66,Default,,0000,0000,0000,,Czyli za każdym razem dodajemy 1. Dialogue: 0,0:04:11.76,0:04:13.00,Default,,0000,0000,0000,,Zaczynamy od 2, Dialogue: 0,0:04:13.55,0:04:16.83,Default,,0000,0000,0000,,potem jest 3, 4...\NZa każdym kliknięciem - więcej. Dialogue: 0,0:04:16.94,0:04:18.04,Default,,0000,0000,0000,,Spróbujmy! Dialogue: 0,0:04:18.25,0:04:20.13,Default,,0000,0000,0000,,Hura! Mnóstwo baloników! Dialogue: 0,0:04:20.23,0:04:21.94,Default,,0000,0000,0000,,Balonikowe szaleństwo! Dialogue: 0,0:04:22.04,0:04:24.13,Default,,0000,0000,0000,,Fajnie, prawda? Dialogue: 0,0:04:24.71,0:04:27.12,Default,,0000,0000,0000,,Ale to nie jest najlepsza metoda. Dialogue: 0,0:04:27.22,0:04:28.47,Default,,0000,0000,0000,,Okazuje się, Dialogue: 0,0:04:28.57,0:04:32.04,Default,,0000,0000,0000,,że będziemy często\Ndodawać elementy do tablicy. Dialogue: 0,0:04:32.14,0:04:34.72,Default,,0000,0000,0000,,Jest znacznie prostszy sposób. Dialogue: 0,0:04:34.82,0:04:37.90,Default,,0000,0000,0000,,Skasuję to, co napisaliśmy... Dialogue: 0,0:04:37.100,0:04:40.91,Default,,0000,0000,0000,,To już nie jest potrzebne. Dialogue: 0,0:04:41.01,0:04:42.38,Default,,0000,0000,0000,,Cofamy. Dialogue: 0,0:04:42.48,0:04:45.44,Default,,0000,0000,0000,,Robimy tak. Piszemy: „xPositions”, Dialogue: 0,0:04:46.07,0:04:48.13,Default,,0000,0000,0000,,potem kropka, „push” Dialogue: 0,0:04:48.23,0:04:50.23,Default,,0000,0000,0000,,i „mouseX”. Dialogue: 0,0:04:50.92,0:04:56.24,Default,,0000,0000,0000,,Przywołujemy tę metodę\Nw tablicy „xPositions”. Dialogue: 0,0:04:56.34,0:04:58.35,Default,,0000,0000,0000,,Wydajemy polecenie. Dialogue: 0,0:04:58.45,0:05:02.25,Default,,0000,0000,0000,,Mówimy: „Wepchnij nową wartość, Dialogue: 0,0:05:02.35,0:05:05.34,Default,,0000,0000,0000,,czyli mouseX, na koniec tablicy“. Dialogue: 0,0:05:05.44,0:05:09.08,Default,,0000,0000,0000,,Przy każdym przywołaniu,\Nczyli gdy ktoś klika myszką, Dialogue: 0,0:05:09.18,0:05:12.49,Default,,0000,0000,0000,,program spojrzy na „mouseX”\Ni umieści to na końcu tablicy. Dialogue: 0,0:05:12.59,0:05:15.12,Default,,0000,0000,0000,,Tablica będzie się zatem powiększać. Dialogue: 0,0:05:15.22,0:05:16.86,Default,,0000,0000,0000,,Zacznijmy od nowa. Dialogue: 0,0:05:17.65,0:05:22.25,Default,,0000,0000,0000,,Udało się! A program jest krótszy\Nniż przedtem! Dialogue: 0,0:05:23.08,0:05:27.40,Default,,0000,0000,0000,,Na ogół będziecie używać „push”,\Nżeby dodać elementy do tablicy. Dialogue: 0,0:05:27.50,0:05:31.54,Default,,0000,0000,0000,,I świetnie: tablice rosną\Nw czasie trwania programu. Dialogue: 0,0:05:31.64,0:05:36.22,Default,,0000,0000,0000,,Np. przy animacji, albo gdy użytkownik\Ncoś robi... Możliwości jest dużo. Dialogue: 0,0:05:36.32,0:05:41.54,Default,,0000,0000,0000,,Widzieliście 90% tego, do czego\Nużywa się tablic - i jak się to robi. Dialogue: 0,0:05:41.64,0:05:43.86,Default,,0000,0000,0000,,Ale to nie wszystko. Dialogue: 0,0:05:43.96,0:05:47.04,Default,,0000,0000,0000,,Jeśli macie pytania, zadawajcie je. Dialogue: 0,0:05:47.14,0:05:49.74,Default,,0000,0000,0000,,Tylko najpierw opanujcie podstawy!