Witajcie w kolejnej części naszej serii „Robimy grę„. Dziś nauczymy naszego głównego bohatera – pomarańczowego kotka, zbierać jabłka i zdobywać za nie punkty. To sprawi, że gra stanie się ciekawsza i bardziej satysfakcjonująca dla gracza. Do dzieła!

W tym wpisie serii „Robimy grę” dowiemy się czym jest zmienna i jak używać bloczków z kategorii „Zmienna”, „Zdarzenia”, „Kontrola”, „Czujniki”, „Wygląd” i „Dźwięk” w narzędziu Scratch. Jeśli nie wiesz, czym jest Scratch koniecznie cofnij się do moich wpisów Jak zacząć programowanie w Scratch oraz Rejestracja w Scratch krok po kroku.






Podsumowanie dotychczasowych etapów serii „Robimy grę”
W poprzedniej części nauczyliśmy się, jak sterować kotkiem i pilnować, żeby nie przechodził przez ściany labiryntu. A jeszcze wcześniej przeprowadziliśmy burzę mózgów, wymyśliliśmy fabułę gry, wybraliśmy narzędzie, w którym ją zrobimy i stworzyliśmy własne grafiki. Teraz czas dodać nowe wyzwanie – rozmieszczenie jabłek w grze oraz system punktacji, który będzie informował, ile jabłek zebrał nasz bohater.
👉 Cel dzisiejszego wpisu
Naszym celem jest zaprogramowanie:
- Jabłek jako duszków do zbierania.
- Systemu punktacji, który zlicza zdobyte jabłka.
- Efektów wizualnych i dźwiękowych przy zbieraniu jabłek.
Dodawanie jabłek do gry krok po kroku
1. Tworzenie duszków jabłek
- Wybieramy opcję „Dodaj duszka” i wyszukujemy obrazek jabłka z bazy Scratcha lub używamy własnej grafiki. Ja wszystkie nasze grafiki dodałam już w tej części.
- Możemy dodać kilka takich samych lub różnych jabłek jako osobne duszki (np. „Jablko1”, „Jablko2”).

2. Rozmieszczenie jabłek w labiryncie
- Przeciągamy duszki jabłek na scenę i umieszczamy je w różnych miejscach labiryntu.
- Starajmy się umieścić jabłka w miejscach, które zachęcą gracza do eksploracji.

Tworzenie systemu punktacji
1. Czym jest „zmienna”?
Wyobraź sobie, że masz pudełko. Na tym pudełku możesz przykleić etykietkę, np.:
🟡 ilość_punktów
, 🔵 życie_kotka
albo 🟢 liczba_jabłek
(to NAZWA ZMIENNEJ)
W środku tego pudełka zawsze jest JAKAŚ WARTOŚĆ ZMIENNEJ:
Na początku: ilość_punktów
= 0, potem zebrałeś jabłko: ilość_punktów
= 1, potem zebrałeś kolejne jabłko: ilość_punktów
= 2 i tak dalej!
To tak, jakby w środku była karteczka z liczbą, którą co chwilę można ZMIENIAĆ.
W grach zmienne to np. liczba punktów, ilość życia, czas do końca rundy, czy drzwi są otwarte (tak/nie = prawda/fałsz), a nawet… jak bardzo wkurzony jest nasz Czarnodzielnik! 😈 😅
2. Dodanie zmiennej „Punkty”
- W zakładce „Zmienne” klikamy „Utwórz zmienną” i nadajemy jej nazwę „Punkty”.
- Zmienna pojawi się na scenie i będzie wyświetlała aktualny wynik gracza.

3. Skrypt dla jabłek
Każde jabłko musi mieć swój skrypt odpowiadający za reakcję na dotknięcie przez kotka:
- Dodajemy blok „Kiedy [zielona flaga] kliknięta”.
- Żeby jabłka były zawsze widoczne na początku gry ustawiamy im klocek „pokaż” z kategorii „Wygląd”.
- Poniżej dodajemy pętlę „zawsze”, aby nasłuchiwać interakcji.
- W pętli umieszczamy warunek „jeśli [dotyka duszka Kotek]”:
- Dodajemy blok „zmień Punkty o 1” (dodanie jednego punktu).
- Dodajemy blok „ukryj” – jabłko znika po zebraniu.
- Dodajemy dźwięk (np. „pop” lub „chrup”) dla efektu audio (trzeba go nagrać).

Taki skrypt ustawiamy dla każdego z jabłek.
4. Resetowanie punktów na początku gry
Gra powinna zaczynać się z wyzerowaną liczbą punktów, dlatego:
- Dodajemy skrypt dla kotka lub tła:
- Blok „Kiedy [zielona flaga] kliknięta”.
- Blok „ustaw Punkty na 0”, aby na początku gry zawsze zaczynać od zera.

Pełny skrypt
W tym momencie nasz skrypt wygląda następująco:


Nasz kot potrafi poruszać się po labiryncie (tylko po ścieżkach), mamy jabłka, które na początku gry pojawiają się w ustalonych przez nas miejscach, a kiedy kot ich dotknie, to je zjada i zdobywa punkt (jeden za każde zjedzone jabłko).
Dodatkowe wskazówki:
- Efekt błysku: Możemy dodać krótki efekt błysku jabłka przed zniknięciem (zmieniając jego przezroczystość lub rozmiar).
- Różne wartości punktów: Możesz przypisać różnym jabłkom różne wartości punktowe (np. czerwone jabłka +1, złote jabłka +5).
- Losowe rozmieszczenie: Jeśli chcesz dodać element zaskoczenia, możesz zaprogramować losowe rozmieszczenie jabłek przy każdorazowym rozpoczęciu gry.
Śmiało – eksperymentuj!
Testowanie mechanizmu zbierania
Po dodaniu skryptów warto przetestować grę:
- Czy jabłka znikają po dotknięciu przez kotka?
- Czy punkty są poprawnie zliczane?
- Czy zmienna „Punkty” wyświetla się na scenie zgodnie z oczekiwaniami?
U mnie np. nie działało znikanie jabłek i nie odtwarzał się dźwięk chrupania. Okazało się, że klocki „ukryj” i „zagraj dźwięk” nie były umieszczone w pętli „zawsze”. Po poprawkach wszystko działa jak trzeba.
Do usłyszenia wkrótce!