Ping-Pong. Gra dla dwóch graczy. · 2020. 2. 26. · 1 . Ping-Pong. Gra dla dwóch graczy. Uwaga:...

Post on 23-Jan-2021

1 views 0 download

Transcript of Ping-Pong. Gra dla dwóch graczy. · 2020. 2. 26. · 1 . Ping-Pong. Gra dla dwóch graczy. Uwaga:...

1

Ping-Pong. Gra dla dwóch graczy.

Uwaga:

Wszystkie pliki graficzne potrzebne do wykonania gry znajdują się w archiwum „ping-pong.zip”.

Pliki należy wypakować do jednego katalogu.

Instrukcja

1. Na scenę wczytujemy duszki: pilka, paletkaLewa i paletkaPrawa.

2. Wczytujemy tło techniczne.

3. Duszki ustawiamy na pozycjach początkowych: piłka na środku, paletki po obu stronach stołu.

4. Dodajemy sterowanie do pierwszej paletki (sterowanie klawiszami [W] i [S])

2

5. Analogicznie dodajemy sterowanie do drugiej paletki (sterowanie strzałkami góra/dół).

6. Modyfikujemy skrypt położenia początkowego piłki – tak aby pojawiała się zawsze na środku w poziomie, a jej współrzędne y były randomizowane.

7. Po rozpoczęciu gry piłeczka ma wylatywać w jednym z czterech kierunków (losowo). Tak jak pokazują czerwone strzałki. Musimy w tym celu stworzyć instrukcje wyboru (odpowiednik instrukcji switch-case).

3

8. Tworzymy zmienną o nazwie kierunek_lotu_piłki. Ma ona przyjmować wartości losowe z zakresu od 1 do 4 i sterować kierunkiem lotu piłki (poniższy skrypt znajduje się na piłce):

9. Do kodu z poprzedniego punktu dodajemy bloki odpowiedzialne za ruch piłki i jej obijanie się od ścianek.

4

10. Do kodu z poprzedniego punktu dodajemy kod odpowiedzialny za odbijanie się piłki od

pierwszej paletki.

5

11. Analogicznie dodajemy kod powodujący odbijanie od drugiej paletki.

6

12. Zmieniamy tło z technicznego na właściwe. Na tym etapie nasza gra powinna wyglądać następująco:

Zliczanie punktów

13. W edytorze Scratch tworzymy dwa duszki – prostokąty o niewielkiej szerokości, które nazywamy „scianaPrawa” i „scianaLewa” i ustawiamy po lewej i prawej stronie sceny – za paletkami.

Jak na rysunku poniżej:

7

14. Tworzymy dwie zmienne, które będą przechowywały ilości punktów dla obu graczy. Zmienne te nazywamy po prostu „Punkty Gracza 1” i „Punkty Gracza 2”. Obie zmienne na początku gry mają przyjąć wartości równe zero. Przychodzimy na duszka piłeczki i dodajemy do niego poniższe zadanie:

15. Do powyższego skryptu dodajemy bloki powodujące naliczanie punktów dla jednego z graczy:

Powyższe rozwiązanie ma wadę w postaci naliczania kilku punktów od razu. Zaraz to poprawimy.

8

16. Do kodu z poprzedniego punktu dodajemy bloki powodujące, że zawsze kiedy gracz zdobędzie punkt, piłka zniknie, a następnie po chwili pojawi się na środku planszy, i zacznie lecieć w jednym z czterech losowych kierunków. Czyli jest to taka sytuacja jak przy starcie gry:

17. Analogiczny kod dodajemy dla zderzenia z drugą ścianką

9

Plansza po zdobyciu punktu

Po zdobyciu punktu – dodajemy planszę z jednoczesnym odliczaniem GOOOOL – 3 – 2 – 1 po czym następna piłka idzie w ruch

18. Posługując się plikami gol, gol1, gol2, gol3 - tworzymy nowego duszka z czterema kostiumami

jak na poniższym screenie:

19. W momencie kiedy któryś z graczy zdobywa punkt, nadajemy komunikat „GOL”.

10

20. Teraz na nowo utworzonym duszku dodajemy kod, który na początku czyni go niewidocznym, a po wyłapaniu eventu „GOL” będzie zmieniał kostiumy.

11

Dźwięki

21. Dodajemy dźwięk odbijania się piłeczki od paletek (znakomicie sprawdzi się w tym celu Effects->Pop).

22. Dodajemy dźwięk oklasków, kiedy któryś z graczy zdobędzie punkt. W tym celu importujemy plik „oklaski.wav” i odgrywamy go wtedy, gdy wystąpi zdarzenie „GOL”.

12

Plansza końcowa i koniec gry

Po 10 przegranych piłkach gra kończy się

23. Tworzymy zmienne „Game Over 1” i „Game Over 2” 24. Przy starcie gry, obie te zmienne mają mieć wartość 10 (skrypt na piłce)

25. Dodajemy operację inkrementacji obu zmiennych zawsze kiedy gracze stracą punkt (uzupełniamy poprzedni skrypt na piłce):

13

26. Nasłuchujemy zdarzenia, gdy wartości zmiennych Game Over 1 lub Game Over 2 osiągną wartości zera – nadajemy wtedy stosowne komunikaty (rozbudowany skrypt z punktu 24):

14

27. Importujemy pliki wygrana_gracza_1 i wygrana_gracza_2 – i z nich tworzymy duszka o nazwie „planszaWyniki”. Duszek ten ma dwa kostiumy.

28. Dodajemy na nim poniższe skrypty:

29. Na duszku z punktu 22 dodajemy skrypt ukrywający go, gdy tylko rozgłoszone zostaną komunikaty:

15

Zwiększanie prędkości piłki

30. Dodajemy zmienną prędkość. Jej wartość po rozpoczęciu gry, oraz po każdej utracie punktu ma przyjąć wartość początkową 5. Za każdym odbiciem paletki wartość tej zmiennej ma się zwiększać o 0.5. Tym samym piłka po każdym odbiciu będzie zwiększać swoją prędkość.

Skrypty piłki:

Skrypty duszka z odliczaniem:

16

Nowe tła w grze

Opcjonalnie można dodać kilka nowych teł do sceny i zmieniać je za każdym razem kiedy naciśniemy klawisz spacji.