Kot rusza w prawo, znika przy krawędzi i najwyraźniej nie zamierza wracać. Pierwsza gra w Scratchu potrafi rozpocząć się od małego buntu bohatera, ale zwykle winny okazuje się jeden znak minus albo brak pozycji startowej. Zanim dodasz przeciwników, punkty i efektowną muzykę, naucz postać poruszać się zgodnie z poleceniami. Kilka bloczków wystarczy do stworzenia prostej zabawy: gracz steruje bohaterem za pomocą strzałek i próbuje dotrzeć do celu. Przy okazji odkrywa, że liczby mogą całkiem sprawnie kierować kotem.
Zacznij od jednej postaci i prostego zadania
Na pierwszy projekt wybierz niewielką grę, w której bohater porusza się po scenie i dociera do wyznaczonego miejsca. Nie potrzebujesz jeszcze labiryntu, skoków ani przeciwników. Najpierw sprawdź, czy potrafisz uruchomić projekt, ustawić postać na początku i przesunąć ją w czterech kierunkach.
Postacie oraz inne obiekty na scenie Scratch nazywa duszkami. Każdy duszek może mieć własne skrypty, kostiumy i ustawienia. Jeśli dodasz kota oraz gwiazdkę, kod sterujący kotem umieszczasz przy kocie, a instrukcje dotyczące gwiazdki — przy gwiazdce. Przed ułożeniem bloczków sprawdź, który obiekt masz zaznaczony. To drobiazg, który oszczędza późniejszych poszukiwań zagubionego programu.
Wybierz spokojne tło i zmniejsz bohatera, jeśli zajmuje dużą część sceny. Na tym etapie czytelność pomaga bardziej niż rozbudowana dekoracja. Łatwiej zauważysz kierunek ruchu i moment dotarcia do celu.
Scena ma własny adres dla każdego punktu
Położenie duszka opisują dwie liczby: x oraz y. Pierwsza określa pozycję w poziomie, druga w pionie. Ich znaczenie wyjaśnia układ współrzędnych, dzięki któremu możesz wskazać miejsce bez poleceń „trochę wyżej” i „jeszcze kawałek w lewo”.
Scena Scratcha ma szerokość 480 i wysokość 360 jednostek. Jej środek odpowiada punktowi x: 0, y: 0. Lewa krawędź znajduje się przy x równym −240, prawa przy 240. Górna odpowiada y równemu 180, a dolna −180.
Dodatnie x oznacza położenie na prawo od środka, a ujemne — na lewo. Dodatnie y prowadzi w górę, ujemne w dół. Punkt o współrzędnych x: −150, y: −100 znajduje się zatem w lewej dolnej części sceny. Pamiętaj przy tym, że pozycja odnosi się do punktu odniesienia duszka, zwykle środka jego kostiumu. Duża postać może wystawać poza krawędź, mimo że jej współrzędne nadal mieszczą się w granicach sceny.
Ustaw pozycję startową po kliknięciu flagi
Każda nowa rozgrywka powinna rozpoczynać się w przewidywalny sposób. Jeśli nie dodasz odpowiedniej instrukcji, bohater może pozostać tam, dokąd dotarł podczas poprzedniej próby. Gracz kliknie flagę i od razu znajdzie się przy celu albo w rogu sceny.
Przy duszku bohatera ułóż początek skryptu:
- zdarzenie uruchamiane po kliknięciu zielonej flagi;
- polecenie ustawiające pozycję na x: −150, y: −100;
- polecenie pokazujące duszka, jeśli wcześniej mógł się ukryć.
Możesz również ustawić rozmiar postaci na początku programu. Dzięki temu kolejne próby będą porównywalne, nawet jeśli podczas eksperymentów zmienisz wygląd bohatera. Instrukcje startowe porządkują stan gry przed pierwszym ruchem.
Jak przypisać strzałkom właściwe kierunki?
Do prostego sterowania użyj bloczków zmieniających x i y. Strzałka w prawo powinna zwiększać x, a strzałka w lewo je zmniejszać. Przy ruchu pionowym zmienia się wyłącznie y: w górę rośnie, w dół maleje.
| Naciśnięty klawisz | Zmiana pozycji | Przykładowa instrukcja |
|---|---|---|
| Strzałka w prawo | Większe x | Zmień x o 4 |
| Strzałka w lewo | Mniejsze x | Zmień x o −4 |
| Strzałka w górę | Większe y | Zmień y o 4 |
| Strzałka w dół | Mniejsze y | Zmień y o −4 |
Liczba 4 określa przesunięcie podczas jednego wykonania instrukcji. Możesz później zmienić ją na 2 lub 6 i porównać zachowanie bohatera. Większa liczba oznacza większy krok, ale nie traktuj jej jako prędkości wyrażonej bezpośrednio w jednostkach na sekundę.
Na początek zachowaj jednakową wielkość kroku w każdym kierunku. Jeśli w prawo przesuwasz duszka o 8, a w lewo o −2, będzie wracał znacznie wolniej. Taka różnica może stanowić świadomą zasadę gry, lecz podczas nauki częściej okazuje się zwykłym przeoczeniem.
Przytrzymany klawisz potrzebuje powtarzanej kontroli
Do płynnego sterowania wygodnie wykorzystać pętlę, która przez cały czas sprawdza stan klawiszy. Pod instrukcjami startowymi dodaj pętlę „zawsze”, a wewnątrz niej cztery osobne warunki. Każdy pyta o jedną strzałkę i wykonuje przypisaną zmianę współrzędnej.
Schemat działania jest prosty: jeśli gracz trzyma prawą strzałkę, program zwiększa x; jeśli lewą, zmniejsza x. Analogicznie sprawdza górę i dół. Ponieważ pętla wraca do tych pytań, postać porusza się przez cały czas przytrzymywania przycisku.
Cztery niezależne warunki pozwalają również poruszać się po skosie. Gdy naciśniesz jednocześnie strzałkę w prawo i w górę, zmienią się obie współrzędne. Przy jednakowym kroku poziomym i pionowym przesunięcie po przekątnej będzie dłuższe niż pojedynczy krok wzdłuż osi. W pierwszej grze możesz zaakceptować ten efekt, ale miej świadomość, skąd się bierze.
„Ustaw” i „zmień” dają inne rezultaty
Polecenie ustawiające x na konkretną liczbę przenosi postać na określoną pozycję poziomą. Instrukcja zmieniająca x dodaje podaną liczbę do aktualnej współrzędnej. Ta różnica wyjaśnia wiele przypadków, w których bohater wykonuje jeden ruch i nagle przestaje reagować.
Jeśli w pętli stale ustawiasz x na 10, duszek pozostanie przy x równym 10. Kolejne wykonania nie przesuną go dalej. Jeśli natomiast wielokrotnie zmieniasz x o 10, współrzędna będzie rosła: z zera do dziesięciu, potem do dwudziestu i trzydziestu.
Polecenia ustawiające pozycję przydają się przy starcie i powrocie do określonego miejsca. Zmiany współrzędnych służą do kolejnych przesunięć. Nie umieszczaj pozycji startowej wewnątrz głównej pętli ruchu, ponieważ program będzie bez przerwy odsyłał bohatera na początek.
Zadbaj, żeby bohater pozostał na scenie
Po uruchomieniu sterowania sprawdź wszystkie cztery krawędzie. Samo przesuwanie x i y nie tworzy reguły zatrzymującej postać w wybranym obszarze. Możesz dodać warunki, które po każdym ruchu korygują pozycję, jeśli przekroczy ustaloną granicę.
Dla niewielkiego duszka przyjmij na próbę zakres x od −210 do 210 oraz y od −150 do 150. W tej samej pętli, po instrukcjach ruchu, sprawdzaj kolejno:
- jeśli x jest większe niż 210, ustaw x na 210;
- jeśli x jest mniejsze niż −210, ustaw x na −210;
- jeśli y jest większe niż 150, ustaw y na 150;
- jeśli y jest mniejsze niż −150, ustaw y na −150.
Te liczby pozostawiają margines przy brzegach, ale dopasuj go do wielkości i kształtu kostiumu. Duży duszek może potrzebować większego odstępu. Nie polegaj wyłącznie na bloczku odbicia od krawędzi: zmienia on kierunek duszka, natomiast opisane sterowanie strzałkami przesuwa współrzędne niezależnie od tego kierunku.
Dodaj cel i prosty komunikat o zwycięstwie
Gdy bohater porusza się poprawnie, dodaj drugi duszek, na przykład gwiazdkę. Ustaw ją po kliknięciu flagi w punkcie x: 150, y: 100. Otrzymasz trasę z lewej dolnej części sceny do prawej górnej, którą gracz pokona za pomocą strzałek.
W głównej pętli bohatera, po ruchu i kontroli granic, dodaj warunek sprawdzający dotknięcie gwiazdki. Gdy warunek zostanie spełniony, bohater może powiedzieć „Cel osiągnięty!” przez dwie sekundy, a następnie zatrzymać wszystkie skrypty. Ponowne kliknięcie flagi rozpocznie następną próbę.
Nie wymagaj na początku idealnej zgodności współrzędnych obu duszków. Bohater porusza się określonymi krokami i może ominąć konkretną liczbę, a gracze oczekują reakcji po widocznym kontakcie postaci z celem. Sprawdzenie dotknięcia jest w tej prostej grze bardziej naturalne.
Testuj ruch, zanim rozbudujesz grę
Po każdej zmianie uruchom projekt od nowa i sprawdź jedną rzecz. Najpierw prawą oraz lewą strzałkę, później ruch pionowy, następnie granice i dotarcie do gwiazdki. Jeśli dodasz kilka mechanizmów naraz, trudniej ustalisz, który z nich odpowiada za nieoczekiwane zachowanie.
Gdy postać idzie w przeciwną stronę, sprawdź znak liczby w bloczku. Jeśli skacze na początek, poszukaj instrukcji ustawiającej pozycję wewnątrz pętli. Jeżeli zamiast kota porusza się gwiazdka, sprawdź, przy którym duszku znajduje się kod. Przy braku reakcji na klawisze upewnij się również, że projekt działa, a aktywne pole tekstowe nie przechwytuje wpisywanych znaków.
Dopiero po tych próbach dodaj dźwięk, nowy kostium lub kolejny cel. Pierwsza gra nie potrzebuje dziesięciu poziomów, żeby dać satysfakcję. Postać, która rusza zgodnie z poleceniem, zatrzymuje się przy brzegu i rozpoznaje metę, już wykonuje cały zestaw sensownych instrukcji. Kot może nadal wyglądać beztrosko, ale tym razem liczby pilnują, dokąd trafi.









