Projekt okładki: Studio Gravite/Olsztyn - pdf.helion.plpdf.helion.pl/scrabt/scrabt.pdf ·...

16

Transcript of Projekt okładki: Studio Gravite/Olsztyn - pdf.helion.plpdf.helion.pl/scrabt/scrabt.pdf ·...

• Kup książkę• Poleć książkę • Oceń książkę

• Księgarnia internetowa• Lubię to! » Nasza społeczność

Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną, fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje naruszenie praw autorskich niniejszej publikacji.

Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich właścicieli.

Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacje były kompletne i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane z tym ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Wydawnictwo HELION nie ponoszą również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji zawartych w książce.

Opieka redakcyjna: Ewelina BurskaProjekt okładki: Studio Gravite/Olsztyn

Obarek, Pokoński, Pazdrijowski, ZapruckiMateriały graficzne na okładce zostały wykorzystane za zgodą Shutterstock.

Wydawnictwo HELIONul. Kościuszki 1c, 44-100 GLIWICEtel. 32 231 22 19, 32 230 98 63e-mail: [email protected]: http://helion.pl (księgarnia internetowa, katalog książek)

Drogi Czytelniku!Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres http://helion.pl/user/opinie/scrabtMożesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.

ISBN: 978-83-283-1395-8

Copyright © Helion 2015

Printed in Poland.

3spis treści

Spis treści

Wstęp • 7

Część 01. Na czym polega programowanie • 11

Rozdział 1. projekt akwarium • 12Początek przygody • 12Duszki • 13Ruch duszków • 14Naucz rybę pływać • 14Jedną ręką stwórz akwarium • 15Tam i z powrotem • 16Łączenie programu w całość • 16Ośmiornica wchodzi do gry • 18Może jeszcze rozgwiazda? • 19Pływając wśród ryb • 19

Rozdział 2. Znikający duszek i okrutna matematyka • 22Czym jest zmienna? • 22Naucz duszka matematyki • 23Pojawia się duszek • 24Układ współrzędnych • 24Co zrobić, aby duszek zniknął? • 27Licznik punktów • 28Instrukcja dla gracza • 28Co zrobić, aby gra zawsze zaczynała się tak samo? • 29

Rozdział 3. pogrywamy sobie w kotka i myszkę • 30Instrukcje warunkowe • 30Pętle • 31Zabawa w kotka i myszkę — założenia gry • 32Mysz harcuje • 33Biegające koty • 33Mysz dostaje drugie życie • 34Wprowadź poprawki • 35Nietoperz płata figle • 36

Rozdział 4. przygody w kosmosie • 39Klony • 39Lataj • 40

Poleć książkęKup książkę

4 scr AtcH BeZ tAJeMNic . prOGr AMOWANie G ier OD pODstAW

Sklonuj pociski • 41Nadlatują asteroidy • 43Licznik punktów • 44

Rozdział 5. Kosmiczna bitwa • 46Komunikaty • 46Potężny wróg • 47Amunicja wroga • 47Wysłanie komunikatu pojaw się • 48Odbiór komunikatu pojaw się • 49Zestrzelenie przeciwnika • 49Salwa przeciwnika • 51Eksplozje i wybuchy — czyli tworzymy animację • 52

Część 02. Jak samodzielnie rozwiązywać problemy • 55

Rozdział 6. Żuczek na autostradzie • 56Ruch żuczka • 56Pierwszy pas ruchu • 57Kolejne pasy ruchu • 58Warunki zwycięstwa i przegranej • 59Czas się kończy • 60

Rozdział 7. Arkanoid • 62Arkanoid — czyli co? • 62Belka • 63Piłka • 63Odbicie piłki od paletki — wersja zaawansowana • 64Bloki • 65Kolizja piłki i bloku • 66Zwycięstwo i przegrana • 67

Rozdział 8. twoje własne bloczki • 68Po co Ci definiowanie bloczków? • 68Tworzenie własnych bloczków • 69Bloczki z parametrami • 70Tworzenie bloczków, ćwiczenie 1. — baletnica • 71Tworzenie bloczków, ćwiczenie 2. — inwazja baletnic • 71

Rozdział 9. inwazja bakterii • 74Inwazja bakterii — pomysł na grę • 74

Poleć książkęKup książkę

CZĘŚĆ

01

5spis treści

Podążanie za kursorem • 74Strzelanie • 75Pojawiają się bakterie • 76Bakterie nacierają • 77Bakterie znikają • 78

Rozdział 10. rysowanie jest proste • 80Kwadrat • 80Jak porusza się duszek? • 81Jak narysować kwiatek? • 81Wiele kwadratów • 82Kolorowe kółko • 83Zabawa półkolami • 83W labiryncie • 84N-kąt foremny • 85

Część 03. Jak stworzyć wymarzoną grę • 87

Rozdział 11. platformówka • 88Metoda działania • 88Skok — wersja najprostsza • 89Skok — poprawiony warunek wykonania skoku • 89Ruch w bok • 90Ruch w bok — poprawki • 91Ruch w bok — inne podejście • 91Skok — odbicia od platform • 92Platformy • 92Kolizja ze spodem platformy • 93

Rozdział 12. Zupełnie inna platformówka • 95Dwa rodzaje zmiennych • 95Przesuwające się tło — zasada działania • 96Przesuwające się tło • 97Skok • 99

Rozdział 13. Wąż • 100Listy — sposób na wiele danych • 100Tworzenie list • 101Listy — nowe bloczki • 102Stemplowanie • 103Ruch węża • 103Zostaw ślad • 104

Poleć książkęKup książkę

6 scr AtcH BeZ tAJeMNic . prOGr AMOWANie G ier OD pODstAW

JEŻELI:

Popraw ruch • 105Skracanie węża • 105Karmienie węża • 107

Rozdział 14. turniej łuczniczy • 109Założenia gry • 109Obliczanie odległości pomiędzy punktami • 109Przygotowania • 111Proste sterowanie celownikiem • 111Strzał • 112Liczenie punktów • 113Utrudnij sobie strzelanie • 114Drgania celownika • 115Obliczanie różnicy pozycji i zapisywanie jej w liście • 115Obliczanie średniej • 116

Rozdział 15. Niech zabrzmią działa • 118Jak leci kula armatnia? • 118Przygotowania • 119Ruch kuli • 120Sterowanie armatą • 121Niech zabrzmią działa • 122Parametry wystrzału • 123

Do zobaczenia • 126

Skorowidz • 127

Poleć książkęKup książkę

88 SCR ATCH BEZ TAJEMNIC . PROGR AMOWANIE G IER OD PODSTAW

ROZDZIAŁ

11

Metoda działania

W tym rozdziale przećwiczysz metodę rozwiązywania problemów programistycznych polegającą na rozpoczęciu od prostego rozwiązania i wprowadzaniu kolejnych poprawek, dopóki nie uzyskasz satysfakcjonującego rezultatu.

Poniżej możesz zobaczyć prosty schemat rozwiązywania problemów pojawiających się podczas tworzenia programów komputerowych.

Platformówka

W tym rozdziale poznasz jeden ze sposobów rozwiązywania problemów programistycznych. Zaczniesz od stworzenia prostego działającego rozwiązania, które będzie w kolejnych krokach ulepszane. Dowiesz się też, jak zaprogramować skok oraz jak zbudować planszę składającą się z kilku ekranów.

Poleć książkęKup książkę

89ROZDZIAŁ 1 1 . PL ATFORMÓWK A

CZĘŚĆ

03Skok — wersja najprostsza

Podstawą działania instrukcji skoku będzie zmienna prędkość Y, określająca, z jaką prędkością duszek będzie wznosił się lub spadał w każdym kolejnym momencie skoku. Prędkość ta będzie się zmie-niała w trakcie skoku.

Początkowo prędkość Y będzie ustawiona na 15 i o tyle kroków w górę przesunie się duszek. Co jeden obieg pętli zmienna prędkość Y bę-dzie zmniejszana o 1 — duszek będzie wznosił się coraz wolniej, aż wreszcie zmienna prędkość Y zacznie mieć wartości ujemne — duszek zacznie spadać. Spadanie zakończy się, jeżeli duszek dotknie krawę-dzi. Wtedy zmienna prędkość Y zostanie ustawiona na 0.

Zaobserwuj, co się dzieje po uruchomieniu. Jakie są najważniejsze problemy?

Stwórz zmienną prędkość Y.

Dodaj poniższy kod. Zastanów się, jak działa.

Utwórz nowy projekt.

Wybierz dowolnego duszka jako bohatera, usuń kotka.

Skok — poprawiony warunek wykonania skoku

W poprzedniej wersji skoku największym problemem wydaje się to, że duszek może wykonać skok nawet wtedy, kiedy nie dotyka podłoża.

Poleć książkęKup książkę

90 SCR ATCH BEZ TAJEMNIC . PROGR AMOWANIE G IER OD PODSTAW

Czym jest spowodowany błąd? Jak go naprawić?

Zmień warunek, pod jakim zwiększasz zmienną prędkość Y. Oprócz tego, że musi zostać wciśnięty klawisz strzałka w górę, aby wyskoczyć, nasz duszek będzie musiał dotykać krawędzi. Przy okazji możesz dodać warunek, który zeruje zmienną prędkość Y tylko wtedy, kiedy duszek dotyka krawędzi i nie jest wciśnięty klawisz strzałka w górę.

Zmień swój kod, tak aby wyglądał następująco:

W tym momencie wydaje się, że nasz kod odpowiedzialny za skok działa już poprawnie. Musisz jednak pamiętać, że w trakcie dalsze-go rozwijania programu może się okazać, że kod, który wydawał się działać dobrze, w pewnych sytuacjach nie działa tak, jak powinien.

Ruch w bok

Dodaj do swojego programu możliwość przesuwania się w prawo i w lewo.

Sprawdź poprawność działania programu. Jakie widzisz błędy? Jak je naprawić?

Poleć książkęKup książkę

91ROZDZIAŁ 1 1 . PL ATFORMÓWK A

CZĘŚĆ

03Ruch w bok — poprawki

Podstawowym problemem jest to, że gracz może po prostu wyjść poza ekran. Spróbuj to naprawić najprostszym sposobem, jaki do-tychczas stosowałeś — bloczkiem Ruch/jeżeli na brzegu, odbij się.

Wewnątrz pętli zawsze dodaj bloczek Ruch/jeżeli na brzegu, odbij się.

Przetestuj działanie programu.

Jakie widzisz błędy? Jak je naprawić?

Katastrofa! Zależnie od tego, w którym miejscu w pętli umieścisz blo-czek Ruch/jeżeli na brzegu, odbij się, duszek zachowuje się inaczej, ale zawsze zachowuje się dziwnie. Zastanów się, skąd wziął się taki efekt?

Ruch w bok — inne podejście

Zmodyfi kuj polecenia ruchu w prawo i w lewo:

• ruch w lewo może nastąpić tylko wtedy, gdy spełnio-ne są jednocześnie dwa warunki: jest wciśnięta strzał-ka w lewo i pozycja x duszka jest większa niż –230,

• ruch w prawo może nastąpić tylko wtedy, gdy spełnio-ne są jednocześnie dwa warunki: jest wciśnięta strzałka w prawo i pozycja x duszka jest mniejsza niż 230.

Wycofaj poprzednią zmianę w programie.

Przetestuj działanie programu.

Jakie widzisz błędy? Jak je naprawić?

Poleć książkęKup książkę

92 SCR ATCH BEZ TAJEMNIC . PROGR AMOWANIE G IER OD PODSTAW

Skok — odbicia od platform

Obecnie gracz może wykonać skok, kiedy znajduje się przy krawędzi. Oznacza to, że można podskakiwać, nie dotykając podłoża, tylko ścian. Aby wyeliminować ten problem, należy zmienić warunek sko-ku — skok będzie możliwy tylko wtedy, gdy duszek dotyka wybrane-go koloru (np. koloru podłoża).

Przetestuj działanie programu.

W dolnej części tła dorysuj pasek wybranego koloru (najlepiej użyć narzędzia do rysowania prostokątów).

Zmień kod odpowiedzialny za skok, tak aby jednym z warunków skoku było dotknięcie wybranego koloru, a nie dotknięcie krawędzi.

Platformy

Narysuj na tle platformy, na które gracz będzie mógł wskakiwać.

Pomniejsz swojego duszka.

Przetestuj działanie programu.

Jakie widzisz błędy? Jak je naprawić?

Poleć książkęKup książkę

Poleć książkęKup książkę

127SkOROWIDZ

Skorowidz

Aanimacja, 52Arkanoid, 62

Bbloczek, 8, 13

Czujniki, 31dotyka, 35klawisz… naciśnięty, 40, 41odpowiedź, 23stoper, 60współrzędna, 42zapytaj i czekaj, 23zeruj stoper, 60

Danedługość, 102dodaj, 102ustaw, 23ustaw punkty, 29ustaw życie, 34usuń, 102, 105wstaw, 102zamień element, 102zmień punkty, 28zmień życie o, 35

Dźwięk, 13, 35Kontrola

jeżeli… to, 30, 33, 35kiedy zaczynam jako klon, 39, 42powtarzaj aż…, 32powtórz, 14, 31powtórz… razy, 32sklonuj, 39, 41usuń tego klona, 39, 42zawsze, 17, 26, 31

Pisakprzyłóż pisak, 80stempluj, 103zmień rozmiar pisaka, 83

Ruchidź do x, y, 26, 29

jeżeli na brzegu, odbij się, 18, 91leć przez, 37obróć, 19przesuń, 14ustaw kierunek, 15, 64ustaw styl obrotu lewo-prawo, 17ustaw w stronę, 75

tworzenie, 68, 69Wygląd

następny kostium, 53pokaż, 27powiedz, 28ukryj, 27

Wyrażenia, 31losuj, 27, 36, 48

z parametrami, 70Zdarzenia

kiedy duszek kliknięty, 28kiedy klawisz, 19, 33, 57kiedy kliknięto, 17kiedy otrzymam…, 46, 48, 50nadaj, 46nadaj i czekaj, 46

bonus, 37

Dduszek, 13

biblioteka, 13, 32domyślny, 13klon, Patrz: klonkostium, 18

tworzenie, 52obracanie, 47, 48rysowanie, 62skrypt, 33sterowany strzałkami, 19, 32wielkość, 34

Eedytor, 12

Poleć książkęKup książkę

128 SCR ATCH BEZ TAJEMNIC . PROGR AMOWANIE G IER OD PODSTAW

Iinstrukcja, 28

blokowanie, 50warunkowa, 30, 31

Jjęzyk programowania, 7

kklon, 39, 40

zmienna, 95, 96komunikat, 46, 48, 122

nadawanie, 48odbieranie, 49

kula armatnia, 118

Llicznik

punktów, 28, 44, 67życia, 45, 67

lista, 100długość, 101, 102tworzenie, 101

Mmyszy przycisk prawy, Patrz: PPM

Nnarzędzie rysowania, 14

Ooś liczbowa, 23

Pparametr, 70pętla, 31, 32pisak, 80polecenie, 14

duplikuj, 16PPM, 13programu uruchamianie, 14

Rrysowanie, 80

SScratch, 8

edytor, Patrz: edytorskok, 89, 98skrypt, 8, 13

dla duszka, 33dla tła, 48

Snake, 100, 103stoper, 60suwak, 85

Ttło

dodawanie, 14przesuwające się, 95, 97

twierdzenie Pitagorasa, 110

Uukład współrzędnych, 24, 26

Wwartość bezwzględna, 78, 96

Zzakładka

Stwórz listę, 22, 101Kostiumy, 18Skrypty, 14, 18

zmienna, 22, 84, 85dla wszystkich duszków, 95dla wybranego duszka, 95nazwa, 22tworzenie, 22wartość, 22życie, 45

Poleć książkęKup książkę