Duszek przechodzi przez jezdnię, czyli poruszanie się w Scratch
Małe i duże kroki duszka
Poniżej przedstawiono scenę programu Scratch, po której mogą poruszać się wszystkie utworzone przez ciebie duszki. Chwyć kota i przesuwaj go po scenie. Obserwuj, jak zmieniają się liczby określające położenie kota na scenie. Liczba oznaczona w programie przez określa jego położenie w poziomie, natomiast liczba oznaczona literą w pionie.
RLyNib16w3z5U
Scena, po której porusza się duszek, ma stałe wymiary: szerokość wynosi punktów a wysokość punktów. Środek sceny to miejsce, w którym wartości i są równe . Liczby maleją przy poruszaniu się duszka w lewą stronę, a rosną gdy duszek porusza się w prawo, natomiast liczby rosną, gdy duszek porusza się do góry, a maleją gdy duszek porusza się w dół.
Wykonanie polecenia przesuń o … krokówm8a9e7162e058e4ef_d565e73przesuń o … kroków z wartością krok to ruch odpowiadający jednej jednostce (punktowi) na scenie. To bardzo mały ruch duszka, prawie niezauważalny. Często wykonujemy jednorazowo większe ruchy, np. w projekcie Spacer duszka nad jezioremP17bHc10LSpacer duszka nad jeziorem jeden ruch dziewczynki odpowiadał krokom. Czasami taki pojedynczy ruch złożony z określonej liczby jednostkowych kroków też będziemy nazywali krokiem.
m8a9e7162e058e4ef_d565e73
R1YiujOSoY6Ur
Polecenie przesuwa duszka o podaną odległość zgodnie z aktualnym kierunkiem oraz aktualnymi ustawieniami pisaka (przyłożony/podniesiony, kolor, grubość). Jeśli chcemy przesunąć duszka do tyłu, należy podać wartość ujemną.
Przykład:
R10S1IrauVOj5
Scenariusz projektu, przygotowanie tła sceny i postaci duszka
Duszek - kot (lub jeśli wolisz, możesz wybrać inną postać z galerii lub zaprojektować własną) ma przejść przez jezdnię na przejściu dla pieszych z sygnalizatorem świetlnym. Po kliknięciu w zieloną flagę zapala się czerwone światło, które świeci przez określony czas (np. sekundy). Kot mówi (w dymku komiksowym), że poczeka aż zapali się zielone światło. Po zapaleniu się zielonego światła (po sekundach) przechodzi przez jezdnię. Przykładowe działanie projektu możesz obejrzeć na filmie.
RX4Cn8QiK8HTl
Wszelkie przemyślenia możesz zapisać w załączonym notatniku.
Rr9Wm4VYLTdxD
1
Ćwiczenie 1
W edytorze graficznym Scratcha lub dowolnym innym przygotuj tło sceny. Poniższy rysunek pomoże ci określić wymiary poszczególnych elementów.
Wykonaj tło w takich wymiarach, jakie ma scena w programie Scratch. Dzięki temu, potem łatwiej będzie ci obliczyć gdzie powinien znajdować się duszek.
Przykładowe tło:
RSRSgiWCJ6c6W
RRZ9II4u4BKLZ
Oglądając film możesz zauważyć, że oprócz kota przechodzącego przez jezdnię na scenie jest jeszcze sygnalizator, który zmienia światło z czerwonego na zielone.
Można przygotować dwa tła sceny, jedno z czerwonym światłem, drugie z zielonym. Sygnalizator może też być duszkiem z dwoma kostiumami. To drugie rozwiązanie jest wygodniejsze i pozwala w łatwy sposób ustawić sygnalizator w dowolnym miejscu na scenie.
1
Ćwiczenie 2
W edytorze graficznym przygotuj rysunek duszka - sygnalizatora świetlnego. Wymiary dobierz sam. Światła pozostaw zgaszone, po utworzeniu dwóch kostiumów duszka uzupełnisz je odpowiednio kolorem zielonym lub czerwonym.
Aby użyć wbudowanego edytora graficznego, kliknij opcję Maluj z rozwijanej listy Wybierz duszka. Po kliknięciu, otworzy się nowe okno, które pozwoli ci używać dostępnych narzędzi do namalowania duszka. Jeśli natomiast kostium duszka został stworzony w zewnętrznym edytorze, możesz go zaimportować, wybierając polecenie Wczytaj duszka z tej samej listy.
Utwórz nowy kostium dla sygnalizatora poprzez skopiowanie pierwszego. Uzupełnij kolory, zapal czerwone światło dla pierwszego kostiumu i zielone dla drugiego. Następnie zmień nazwę nowo utworzonego duszka na sygnalizator, oraz nazwy jego kostiumów odpowiednio na czerwone_swiatlo i zielone_swiatlo.
Żeby skopiować kostium, wybierz zakładkę Kostiumy, następnie kliknij prawym przyciskiem myszy w kostium i z menu kontekstowego wybierz opcję duplikuj.
RGNPJaq2fa7hz
R1FL320pf9TQe
RwSKAzLrbuJBm
Reb79RLY1OnTR
W projekcie występują dwa duszki, każdy z nich ma dwa kostiumy. Warto nadać im własne imiona (nazwy). Tworząc skrypty, często odwołujemy się do duszka lub kostiumu za pośrednictwem jego nazwy.
Budujemy skrypty dla duszków
W projekcie mamy dwa duszki. Zgodnie ze scenariuszem, obydwa wykonują określone czynności po kliknięciu w zieloną flagę. Zacznij od przygotowania skryptu zmieniającego światło na przejściu dla pieszych.
1
Ćwiczenie 4
Utwórz skrypt dla duszka – sygnalizatora świetlnego, tak aby najpierw po rozpoczęciu skryptu zmieniał kolor na czerwony. Następnie po upływie trzech sekund zmienił kolor na zielony.
Do zrealizowania tego zadania możesz wykorzystać blok zmień kostium na …m8a9e7162e058e4ef_d565e175zmień kostium na …, który znajduje się w zakładce Wygląd.
Przykładowy skrypt:
R15Uvh7vbYcUi
Zastanów się, jaka powinna być pozycja początkowa kota, aby znalazł się przed przejściem dla pieszych po lewej stronie. Niech to będzie kroków na lewo od krawędzi jezdni. Swój marsz może zakończyć kroków na prawo od krawędzi jezdni. Zakładając, że pojedynczy ruch kota to kroków, odpowiedz na pytanie, ile ruchów musi wykonać, aby przejść przez jezdnię? Pamiętaj o uwzględnieniu szerokości jezdni.
3
Ćwiczenie 5
Uzupełnij poniższy przepis dla kota. Pomoże ci w tym rysunekm8a9e7162e058e4ef_d565e193rysunek z wymiarami jezdni.
R1KoTMo1FMPPg
1
Ćwiczenie 6
Utwórz skrypt dla kota według przepisu z poprzedniego zadania.
Powtórz … razym8a9e7162e058e4ef_d565e207Powtórz … razy to ważny klocek, który znajduje się w kategorii Kontrola i służy powtórzeniu wybranych instrukcji określoną liczbę razy. Zwróć uwagę, że klocki z instrukcjami, które mają być powtórzone, powinny znaleźć się wewnątrz tego klocka.
Blok Następny kostium działa w taki sposób, że zmienia aktualny kostium wybranego duszka na następny, który znajduje się w zakładce Kostiumy.
R1ZM8TOh3i9I2
Ważne!
Pamiętaj o zapisaniu projektu i sprawdzeniu działania.
m8a9e7162e058e4ef_d565e175
RVag1UWjdXzmM
Powoduje zmianę kostiumu duszka na inny wybrany z listy rozwijalnej. Przykład:
RlP17j8rZen3v
m8a9e7162e058e4ef_d565e193
RRZ9II4u4BKLZ
m8a9e7162e058e4ef_d565e207
RWHWNOJkY5M1e
Bloczek powoduje powtarzanie zestawu instrukcji podaną liczbę razy.
Przykład:
RkBZcHQFjsBmi
Modyfikujemy scenariusz
Zmodyfikujemy nieznacznie scenariusz projektu Duszek przechodzi przez jezdnię. Po uruchomieniu, czyli kliknięciu w zieloną flagę, kot ustawi się przed jezdnią i poprosi o pozwolenie na przejście. Kliknięcie duszka myszką będzie oznaczało, że zgadzamy się, by przeszedł. Jednak duszek, zanim przejdzie, powinien sprawdzić, czy nie świeci się czerwone światło. Jeśli tak, to wyświetla napis, że czeka na zielone.
Zmodyfikować musimy także działanie sygnalizatora, tak aby światło zmieniało się co kilka sekund z czerwonego na zielone i odwrotnie. Na filmie możesz obejrzeć przykład działania zmodyfikowanego projektu.
RdKbhUGJKm2G8
Modyfikujemy skrypty
2
Ćwiczenie 7
Zmodyfikuj skrypt duszka‑sygnalizatora, tak aby po kliknięciu w zieloną flagę cyklicznie zmieniał światło. Na początku niech będzie zapalone czerwone światło.
W celu uzyskania cyklicznych zmian kostiumów, wykorzystaj blok Zawsze. Znajduje się on w zakładce . Połącz go z blokiem Następny kostium, który znajduje się w zakładce Wygląd.
Przykładowy skrypt:
R13NmQrvUBIPm
Zmodyfikuj działania kota, tak aby po uruchomieniu programu tylko ustawił się przed jezdnią i poczekał na pozwolenie na przejście. Dopiero po jego otrzymaniu, powinien sprawdzić kolor światła i jeśli trzeba, czekać na zielone. W tym celu podzielimy dotychczasowy skrypt obsługujący duszka – kota na dwa:
inicjujący, uruchamiany po kliknięciu w zieloną flagę,
realizujący główne zadanie kota – przejście przez jezdnię, uruchamiany po kliknięciu kotka.
1
Ćwiczenie 8
Przygotuj skrypt dla kota uruchamiany po kliknięciu w zieloną flagę. Ma on wykonać teraz tylko dwie czynności: ustawić duszka na pozycji wyjściowej oraz wyświetlić w dymku komiksowym prośbę o pozwolenie na przejście przez jezdnię.
Zamiast bloku powiedz … przez ... sm8a9e7162e058e4ef_d565e289powiedz … przez ... s użyj klocka powiedz …m8a9e7162e058e4ef_d565e280powiedz … . Nie wiesz, jak długo kot będzie czekał na kliknięcie.
Przykładowy skrypt:
RkB3OwNGLAVyt
Jakie czynności powinien wykonać kot, kiedy otrzyma pozwolenie na przejście przez jezdnię? Powinien przed przejściem sprawdzić, jakie światło jest zapalone. Jeżeli świeci się czerwone światło, kot musi poczekać, aż zmieni się na zielone. Następnie przechodzi przez jezdnię. W tym celu wykona analogiczne działania do tych w dotychczasowym projekcie.
3
Ćwiczenie 9
Zbuduj drugi skrypt kota, według którego będzie czekał, aż światło na sygnalizatorze zmieni kolor na zielony. Następnie duszek przejdzie przez pasy na drugą stronę jezdni.
Aby wyłączyć dymek komiksowy, użyj klocka powiedz …m8a9e7162e058e4ef_d565e280powiedz … z pustym tekstem do wyświetlenia.
R1VXuZB0UjeZs
Do oczekiwania na zielone światło wykorzystaj klocek czekaj aż ...m8a9e7162e058e4ef_d565e355czekaj aż ... Warunek zbuduj analogicznie, jak instrukcję jeżelim8a9e7162e058e4ef_d565e327jeżeli.
Przykładowy skrypt:
RFTjFGp1TrJG9
Ważne!
Pamiętaj o zapisaniu projektu. Wypróbuj, jak działa po modyfikacjach.
m8a9e7162e058e4ef_d565e280
RJJnS1s2QhIpi
Wyświetla w dymku tekst podany w polu edycyjnym, nie wstrzymuje działania skryptu, wykonywane są w związku z tym kolejne instrukcje. Dymek jest kasowany po uruchomieniu programu zieloną flagą, naciśnięciu przycisku stop, wykonaniu klocka zatrzymaj wszystko lub wykonaniu klocka powiedz z pustym tekstem.
Przykład:
R11l1nuJDI3Xa
m8a9e7162e058e4ef_d565e289
R106WnKlQxwNV
Wyświetla w dymku tekst podany w polu edycyjnym przez określony czas. Oznacza to wstrzymanie działania skryptu przez ten czas. Przykład:
R1y7Zti08S7PU
m8a9e7162e058e4ef_d565e327
RRjo3SJVkRR6B
Bloczek instrukcji warunkowej, wykonany zostanie raz, jeżeli warunek logiczny wstawiony po słowie jeżeli jest prawdziwy. Warunki budujemy z bloczków kategorii Czujniki i Wyrażenia. Przykład:
R1JdPhD3d6zwf
m8a9e7162e058e4ef_d565e336
RG3KqV9hpwx0Z
Bloczek porównania. Wynikiem jest prawda, kiedy lewa strona równa się prawej.
m8a9e7162e058e4ef_d565e346
RKFHwMQdisTN8
Aktualna wartość wybrana z pierwszej listy rozwijalnej, dotycząca duszka wybranego z drugiej listy lub sceny. Można wybrać -ową lub -ową współrzędną, kierunek, numer kostiumu lub nazwę kostiumu, rozmiar, głośność. Dla sceny można wybrać numer lub nazwę tła, głośność. Przykład:
RhEx2vYB8CPXN
m8a9e7162e058e4ef_d565e355
R1AGiL1wlxBBH
Wstrzymuje działanie skryptu do momentu spełnienia warunku logicznego. Warunki budujemy z bloczków kategorii Czujniki i Wyrażenia.