Twórz własne gry komputerowe w Pythonie / Al Sweigart. Warszawa, Spis treści

Podobne dokumenty
Myśl w języku Python! : nauka programowania / Allen B. Downey. Gliwice, cop Spis treści

Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA

SZCZEGÓŁOWY SPIS TREŚCI

Programowanie w języku Python. Grażyna Koba

Programista samouk : profesjonalny przewodnik do samodzielnej nauki kodowania / Cory Althoff. Gliwice, copyright Spis treści

lekcja 8a Gry komputerowe MasterMind

Język C : programowanie dla początkujących : przewodnik dla adeptów programowania / Greg Perry, Dean Miller. Gliwice, cop

Zaawansowany kurs języka Python

Program szkoleniowy. 24 h dydaktycznych (18 h zegarowych) NAZWA SZCZEGÓŁY CZAS

PyGame Gra w Kółko i Krzyżyk

Jeśli chcesz łatwo i szybko opanować podstawy C++, sięgnij po tę książkę.

Podstawy Programowania C++

Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop Spis treści

Podstawy Programowania Podstawowa składnia języka C++

Liczby losowe i pętla while w języku Python

PyGame Gra w Ponga. Spis treści

PROGRAMOWANIE W PYTHONIE OD PIERWSZYCH KROKÓW

Podstawy programowania, Poniedziałek , 8-10 Projekt, część 3

Microsoft Office 2016 Krok po kroku

1 Podstawy c++ w pigułce.

Naukę zaczynamy od poznania interpretera. Interpreter uruchamiamy z konsoli poleceniem

1 Podstawy c++ w pigułce.

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),

Cw.12 JAVAScript w dokumentach HTML

Budowa i generowanie planszy

Metody numeryczne Laboratorium 2

Magia Ruby : programowanie na wesoło / Eric Weinstein. Warszawa, Spis treści

ECDL Podstawy programowania Sylabus - wersja 1.0

Wstęp do programowania

1 Wielokrotne powtarzanie tych samych operacji

Spis treści. Podstawy posługiwania się komputerem

Tablice mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011

Wstęp do programowania

Podstawy programowania, Poniedziałek , 8-10 Projekt, część 1

Spis treści. Księgarnia PWN: Roland Zimek - Swish Max3

Spis treści. Księgarnia PWN: Roland Zimek - SWiSH Max2 i SWiSH Max3. Wprowadzenie... 9

Program szkolenia VBA (VISUAL BASIC FOR APPLICATIONS) W EXCELU PODSTAWOWY.

Projekty zaliczeniowe Podstawy Programowania 2012/2013

ROZSZERZANIE MOŻLIWOŚCI...

Umieszczanie kodu. kod skryptu

MIKROKONTROLERY ARM DOKUMENTACJA WSTĘPNA PROJEKTU GRA PONG

Opis: Instrukcja warunkowa Składnia: IF [NOT] warunek [AND [NOT] warunek] [OR [NOT] warunek].

Język programowania zbiór reguł określających, które ciągi symboli tworzą program komputerowy oraz jakie obliczenia opisuje ten program.

Definicje. Algorytm to:

Schematy blokowe I. 1. Dostępne bloki: 2. Prosty program drukujący tekst.

Program szkolenia VBA (VISUAL BASIC FOR APPLICATIONS) W EXCELU PRZEKROJOWY.

Skrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać

PAMIĘĆ OPERACYJNA...107

Program szkolenia PODSTAWY VBA (VISUAL BASIC FOR APPLICATIONS) I FORMULARZE.

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.

KATEGORIA OBSZAR WIEDZY

1. Zaczynamy! (9) 2. Edycja dokumentów (33)

Przetwarzanie i analiza danych w języku Python / Marek Gągolewski, Maciej Bartoszuk, Anna Cena. Warszawa, Spis treści

Pzetestuj działanie pętli while i do...while na poniższym przykładzie:

Nazwa implementacji: Nauka języka Python pętla for. Autor: Piotr Fiorek

Podstawy programowania skrót z wykładów:

C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów

1 Ergonomia i komputer Wprowadzenie Krótka historia ergonomii Ergonomiczna praca z komputerem... 11

Ping-Pong. Gra dla dwóch graczy.

Baltie 3. Podręcznik do nauki programowania dla klas I III gimnazjum. Tadeusz Sołtys, Bohumír Soukup

Wykład 2 Składnia języka C# (cz. 1)

Spadające jabłuszka. licencja CC-BY-SA Uznanie autorstwa Na tych samych warunkach 3.0 Polska. Strona 51

KURSY PROGRAMOWANIA DLA DZIECI

1. Narzędzia główne: WORD 2010 INTERFEJS UŻYTKOWNIKA. wycinamy tekst, grafikę

Aplikacje mobilne. Pliki zasobów, grafiki, menu, podpinanie zdarzeń. dr Tomasz Jach Instytut Informatyki, Uniwersytet Śląski

Programowanie w języku Swift : Big Nerd Ranch guide / Matthew Mathias, John Gallagher. Gliwice, cop Spis treści

SPIS TREŚCI: KARTY GRAFICZNE... 15

KURSY PROGRAMOWANIA DLA DZIECI

Baltie 3. Podręcznik do nauki programowania dla klas IV - VI szkoły podstawowej. Tadeusz Sołtys, Bohumír Soukup

Programowanie komputerowe. Zajęcia 1

T-SQL dla każdego / Alison Balter. Gliwice, cop Spis treści. O autorce 11. Dedykacja 12. Podziękowania 12. Wstęp 15

Lekcja 3: Pierwsze kroki z Pythonem. Pętle

Spis treści. 1 Moduł Mapy 2

Temat 1: Podstawowe pojęcia: program, kompilacja, kod

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki

Wprowadzenie (17) Część I. Makra w Excelu - podstawy (23)

Python. Wprowadzenie. Jolanta Bachan

Spis treści. Lekcja 1: Podstawy programu Excel 1. Lekcja 2: Tworzenie i edytowanie skoroszytu 22. Umiejętności do zdobycia w tej lekcji 22

Algorytmy i struktury danych

Teraz bajty. Informatyka dla szkoły podstawowej. Klasa VI

Programowanie w języku C++ Grażyna Koba

Rozkład materiału do zajęć z informatyki. realizowanych według podręcznika

Podstawy programowania Laboratorium. Ćwiczenie 2 Programowanie strukturalne podstawowe rodzaje instrukcji

Programowanie strukturalne i obiektowe : podręcznik do nauki zawodu technik informatyk / Adam Majczak. Gliwice, cop

Programowanie - instrukcje sterujące

Język Python. Język Python 1/35

I. WSTĘP. Przykład 1. Przykład 2. Programowanie czyli tworzenie programów komputerowych (aplikacji komputerowych)

Plan nauczania informatyki Opracował: mgr Daniel Starego

5-6. Struktura dokumentu html. 2 Określenie charakteru i tematyki strony. Rodzaje witryn. Projekt graficzny witryny. Opracowanie skryptów

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

Szkoła programisty PLC : sterowniki przemysłowe / Gilewski Tomasz. Gliwice, cop Spis treści

Python wstęp. Michał Bereta

Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych

JAVAScript w dokumentach HTML (1)

Tematy lekcji informatyki klasa 4a styczeń 2013

2.1. Duszek w labiryncie

Transkrypt:

Twórz własne gry komputerowe w Pythonie / Al Sweigart. Warszawa, 2017 Spis treści WSTĘP DO WYDANIA POLSKIEGO WPROWADZENIE Dla kogo przeznaczona jest ta książka? Zawartość książki Jak korzystać z tej książki Numery wierszy i wcięcia Długie wiersze kodu Pobieranie i instalowanie Pythona Uruchamianie IDLE Pomoc online XVII XIX XX XXI XXII XXIII XXIII XXIV XXV XXVI 1 POWŁOKA INTERAKTYWNA 1 Kilka prostych działań matematycznych 2 Liczby całkowite i rzeczywiste 2 Wyrażenia 3 Wyznaczanie wartości wyrażeń 3 Błędy składniowe 5 Zapisywanie wartości w zmiennych 5 Podsumowanie 9 2 PISANIE PROGRAMÓW 11 Wartości łańcuchowe 12 Konkatenacja łańcuchów 13 Pisanie programów w edytorze plików IDLE 13 Tworzenie programu Hello World" 14 Zapisywanie programu 15 Wykonywanie programu 16 Jak działa program Hello World" 17 Komentarze dla programistów 17 Funkcje: miniprogramy w programach 17 Koniec programu 19 Nadawanie nazw zmiennym 19 Podsumowanie 20 3 ZGADNIJ, JAKA TO LICZBA" 21 Przykładowy przebieg gry Zgadnij, jaka to liczba" 22 Kod źródłowy gry Zgadnij, jaka to liczba" 22

Importowanie modułu random 24 Generowanie liczb losowych za pomocą funkcji random.randint() 25 Powitanie gracza 26 Instrukcje związane z przepływem sterowania 27 Używanie pętli do powtarzania kodu 27 Grupowanie w bloki 27 Pętle z instrukcjami for 28 Wczytywanie próby gracza 30 Konwersja wartości za pomocą funkcji int(), float() i str() 30 Logiczny typ danych 32 Operatory porównania 33 Sprawdzanie warunku za pomocą instrukcji warunkowych 33 Eksperymentowanie z wartościami logicznymi, operatorami porównania i warunkami 34 Różnica między = i == 35 Instrukcje if 36 Wcześniejsze wychodzenie z pętli za pomocą instrukcji break 36 Sprawdzanie, czy gracz wygrał 36 Sprawdzanie, czy gracz przegrał 37 Podsumowanie 38 4 PROGRAM OPOWIADAJĄCY DOWCIPY 41 Kilka przykładowych dowcipów 42 Kod źródłowy programu Dowcipy" 42 Jak działa ten kod 43 Znaki ucieczki 43 Apostrofy i cudzysłowy 44 Parametr end funkcji print() 45 Podsumowanie 46 5 SMOCZA KRAINA" 47 Zasady gry w Smoczą krainę" 47 Przykładowy przebieg gry Smocza kraina" 48 Schemat blokowy Smoczej krainy" 48 Kod źródłowy Smoczej krainy" 49 Importowanie modułów random i time 51 Funkcje w grze Smocza kraina" 51 Instrukcje def 51 Wywoływanie funkcji 52 Gdzie umieszczać definicje funkcji 52 Łańcuchy wielowierszowe 53 Jak wykonywać pętle za pomocą instrukcji while 54 Operatory logiczne 54 Operator and 55 Operator or 56 Operator not 56

Wyznaczanie wartości wyrażeń z operatorami logicznymi 57 Zwracane wartości 58 Zasięg globalny i zasięg lokalny 58 Parametry funkcji 60 Wyświetlanie wyników gry 61 Decydowanie, w której jaskini mieszka przyjazny smok 62 Główna pętla gry 63 Wywoływanie funkcji w programie 63 Pytanie gracza, czy chce zagrać po raz kolejny 64 Podsumowanie 65 6 KORZYSTANIE Z DEBUGERA 67 Rodzaje błędów 68 Debuger 69 Uruchamianie debugera 69 Krok po kroku w trybie debugera 71 Znajdowanie błędów 74 Ustawianie pułapek 77 Korzystanie z pułapek 78 Podsumowanie 80 7 PROJEKTOWANIE GRY SZUBIENICA" Z UŻYCIEM SCHEMATÓW BLOKOWYCH 81 Zasady gry w Szubienicę" 82 Przykładowy przebieg gry Szubienica" 82 Grafika ASCII 83 Projektowanie programu z użyciem schematu blokowego 84 Tworzenie schematu blokowego 85 Rozgałęzienia w schemacie blokowym 86 Kończenie lub restartowanie gry 87 Powtórne zgadywanie 88 Informacja zwrotna dla gracza 90 Podsumowanie 91 8 PISANIE KODU GRY SZUBIENICA" 93 Kod źródłowy gry Szubienica" 94 Importowanie modułu random 97 Stałe 98 Listy jako typ danych 98 Dostęp do elementów przez indeksy 99 Konkatenacja list 100 Operator in 101 Wywoływanie metod 101 Metody listowe reverse() i append() 102 Metoda łańcuchowa split() 102

Wczytywanie tajnego słowa z listy 103 Wyświetlanie planszy 104 Funkcje list() i range() 105 Przycinanie list i łańcuchów 106 Wyświetlanie tajnego słowa z podkreśleniami 107 Wczytywanie strzału gracza 109 Metody łańcuchowe Lower() i upper() 109 Opuszczanie pętli while 111 Instrukcje el if 111 Sprawdzanie, czy gracz podał prawidłową literę 112 Pytanie gracza, czy chce zagrać ponownie 113 Przegląd funkcji w grze Szubienica" 114 Główna pętla gry 114 Wywoływanie funkcji wyświetlplanszę() 115 Umożliwienie graczowi podania litery 115 Sprawdzanie, czy litera znajduje się w tajnym słowie 115 Sprawdzanie, czy gracz wygrał 115 Obsługa nieudanej próby odgadnięcia 116 Sprawdzanie, czy gracz przegrał 117 Kończenie lub resetowanie gry 118 Podsumowanie 118 9 ROZBUDOWA GRY SZUBIENICA" 119 Zwiększanie liczby dozwolonych prób 120 Słowniki jako typ danych 120 Poznawanie rozmiarów słowników za pomocą funkcji len() 121 Różnica między słownikami i listami 122 Metody słownikowe keys() i values() 123 Korzystanie ze słowników w grze Szubienica" 123 Losowe wybieranie z listy 124 Usuwanie elementów z listy 125 Przypisanie wielokrotne 127 Wyświetlanie informacji o kategorii słowa 128 Podsumowanie 129 10 KÓŁKO I KRZYŻYK" 131 Przykładowy przebieg gry w Kółko i krzyżyk" 132 Kod źródłowy gry w Kółko i krzyżyk" 133 Projektowanie programu 138 Przedstawienie planszy w postaci danych 138 Tworzenie strategii dla sztucznej inteligencji 139 Importowanie modułu random 140 Wyświetlanie planszy na ekranie 140 Umożliwienie graczowi wyboru znaku X lub O 141 Ustalanie, kto wykonuje pierwszy ruch 142 Umieszczanie znaku na planszy 143

Odwołania do list 143 Odwołania do list w funkcji wykonajruch() 146 Sprawdzanie, czy gracz wygrał 147 Duplikacja danych planszy 149 Sprawdzanie, czy pole na planszy jest wolne 150 Umożliwianie graczowi wykonania ruchu 150 Wyznaczanie wartości na skróty" 151 Wybieranie ruchu z listy 153 Wartość None 154 Tworzenie sztucznej inteligencji (SI) 155 Sprawdzanie, czy komputer może wygrać w jednym ruchu 156 Sprawdzanie, czy gracz może wygrać w jednym ruchu 156 Sprawdzanie pól narożnych, środkowego i bocznych (w tej właśnie kolejności) 157 Sprawdzanie, czy na planszy są jeszcze wolne pola 158 Główna pętla gry 158 Wybór znaku gracza i ustalenie rozpoczynającego 159 Ruch gracza 159 Ruch komputera 160 Pytanie gracza, czy chce zagrać ponownie 161 Podsumowanie 161 11 DEDUKCYJNA GRA BAGELS" 163 Przykładowy przebieg gry Bagels" 164 Kod źródłowy gry Bagels" 165 Schemat blokowy gry Bagels" 167 Importowanie modułu random i definiowanie funkcji uzyskajtajnąliczbę() 168 Przestawianie kolejności cyfr 168 Zmiana kolejności elementów na liście za pomocą funkcji random.shuffle() 168 Uzyskiwanie tajnej liczby z przestawionych cyfr 169 Skrótowe operatory przypisania 170 Ustalanie, jaką podpowiedź wyświetlić 171 Metoda listowa sort() 172 Metoda łańcuchowa join() 173 Sprawdzanie, czy łańcuch zawiera jedynie cyfry 173 Rozpoczynanie gry 174 Interpolacja łańcuchów 175 Główna pętla gry 176 Wczytywanie próby odgadnięcia 177 Ustalanie podpowiedzi do strzału gracza 177 Sprawdzanie, czy gracz wygrał albo przegrał 177 Pytanie gracza, czy chce zagrać ponownie 178 Podsumowanie 178

12 UKŁAD WSPÓŁRZĘDNYCH KARTEZJAŃSKICH 181 Siatki i współrzędne kartezjańskie 182 Liczby ujemne 184 Układ współrzędnych na ekranie komputera 185 Sztuczki matematyczne 186 Sztuczka 1: Minus pożera znak plusa znajdujący się po jego lewej stronie 186 Sztuczka 2: Dwa minusy łączą się w plus 187 Sztuczka 3: Dwie dodawane liczby mogą zamienić się miejscami 187 Wartości bezwzględne i funkcja abs() 188 Podsumowanie 188 13 GRA POSZUKIWANIE SKARBU SONAREM" 191 Przykładowy przebieg gry Poszukiwanie skarbu sonarem" 193 Kod źródłowy gry Poszukiwanie skarbu sonarem" 195 Projektowanie programu 201 Importowanie modułów random, sys i math 201 Tworzenie nowej planszy do gry 202 Rysowanie planszy do gry 203 Rysowanie współrzędnych x wzdłuż górnej krawędzi planszy 204 Rysowanie oceanu 205 Wyświetlanie rzędu oceanu 205 Rysowanie współrzędnych x na dole planszy 206 Tworzenie losowych skrzyń ze skarbami 206 Ustalanie, czy ruch jest prawidłowy 207 Wykonywanie ruchu na planszy 208 Znajdowanie najbliższej skrzyni ze skarbami 208 Usuwanie wartości za pomocą listowej metody remove() 211 Wczytywanie ruchu gracza 212 Wyświetlanie instrukcji gry dla gracza 214 Główna pętla gry 214 Wyświetlanie informacji o stanie gry 216 Obsługa ruchu gracza 216 Znajdowanie zatopionej skrzyni ze skarbami 217 Sprawdzanie, czy gracz wygrał 217 Sprawdzanie, czy gracz przegrał 218 Kończenie programu za pomocą funkcji sys.exit() 218 Podsumowanie 219 14 SZYFR CEZARA" 221 Kryptografia i szyfrowanie 222 Jak działa szyfr Cezara 223 Przykładowe działanie programu Szyfr Cezara" 224 Kod źródłowy programu Szyfr Cezara" 225 Ustawianie maksymalnej długości klucza 226

Podejmowanie decyzji o zaszyfrowaniu lub odszyfrowaniu wiadomości 227 Wczytywanie tekstu podanego przez gracza 227 Wczytywanie klucza podanego przez gracza 228 Szyfrowanie lub odszyfrowywanie komunikatu 228 Znajdowanie przekazanych łańcuchów za pomocą metody find() 229 Szyfrowanie lub odszyfrowywanie każdej litery 230 Uruchamianie programu 231 Technika siłowa 232 Dodawanie trybu siłowego łamania kodu 232 Podsumowanie 234 15 GRA REVERSEGAM" 235 Jak grać w Reversegam" 236 Przykładowy przebieg gry Reversegam" 239 Kod źródłowy gry Reversegam" 241 Importowanie modułów i konfiguracja stałych 248 Struktura danych z planszą gry 248 Rysowanie struktury danych z planszą na ekranie 249 Tworzenie nowej struktury danych z planszą 250 Sprawdzanie, czy ruch jest prawidłowy 250 Sprawdzanie każdego z ośmiu kierunków 251 Sprawdzanie, czy są jakieś pionki do odwrócenia 253 Sprawdzanie poprawności podanych współrzędnych 254 Uzyskiwanie listy wszystkich możliwych ruchów 255 Wywoływanie funkcji bool() 256 Uzyskiwanie wyniku z planszy 257 Wczytywanie wyboru pionka przez gracza 257 Ustalanie, kto ma wykonać pierwszy ruch 258 Umieszczanie pionka na planszy 258 Kopiowanie struktury danych z planszą 259 Ustalanie, czy pole narożne jest wolne 259 Wczytywanie ruchu gracza 260 Ustalanie ruchu komputera 262 Strategiczne znaczenie pól narożnych 262 Uzyskiwanie listy najlepszych ruchów 263 Wyświetlanie wyników na ekranie 264 Rozpoczynanie gry 264 Sprawdzanie możliwości wykonania ruchu 265 Tura gracza 265 Tura komputera 267 Główna pętla gry 268 Pytanie gracza, czy chce zagrać ponownie 269 Podsumowanie 270 16 SYMULACJA SI W GRZE REVERSEGAM" 271 Komputer ma grać sam ze sobą 272

Przykładowy przebieg symulacji 1 273 Kod źródłowy symulacji 1 273 Usuwanie tekstów wyświetlanych graczowi i dodawanie komputerowego gracza 275 Komputer ma zagrać sam ze sobą wiele razy 276 Przykładowy przebieg symulacji 2 276 Kod źródłowy symulacji 2 277 Siedzenie wielu gier 278 Zasłanianie wywołań funkcji print() komentarzem 279 Procentowa ocena wyników SI 279 Porównywanie różnych algorytmów SI 281 Kod źródłowy symulacji 3 282 Jak działa SI w symulacji 3 283 Porównanie SI 287 Podsumowanie 289 17 TWORZENIE GRAFIKI 291 Instalowanie modułu pygame 292 Hello World" w module pygame 292 Przykładowy przebieg programu Hello World" napisanego z użyciem pygame 293 Kod źródłowy programu Hello World" w wersji pygame 294 Importowanie modułu pygame 295 Inicjalizacja pygame 296 Konfiguracja okna pygame 296 Krotki 297 Obiekty Surface 297 Konfiguracja zmiennych z kolorami 298 Wypisywanie tekstu w oknie pygame 299 Używanie czcionek do stylizacji tekstu 299 Renderowanie obiektu Font 300 Ustawianie położenia tekstu za pomocą atrybutów Rect 301 Wypełnianie obiektu Surface kolorem 303 Funkcje związane z rysowaniem w module pygame 303 Rysowanie wielokąta 303 Rysowanie linii 304 Rysowanie okręgu 305 Rysowanie elipsy 305 Rysowanie prostokąta 306 Kolorowanie pikseli 307 Metoda blit() dla obiektów Surface 307 Rysowanie obiektu Surface na ekranie 308 Zdarzenia i główna pętla gry 308 Uzyskiwanie obiektów Event 309 Opuszczanie programu 309 Podsumowanie 310

18 GRAFIKA ANIMOWANA 311 Przykładowy przebieg programu Animacja" 312 Kod źródłowy programu Animacja" 312 Przemieszczanie i odbijanie się ramek od krawędzi okna 314 Konfiguracja stałych 315 Stałe reprezentujące kierunki 316 Stałe oznaczające kolory 317 Konfiguracja struktur danych z ramkami 317 Główna pętla gry 318 Kod pozwalający wyjść z gry 318 Przemieszczanie każdej ramki 319 Odbijanie się ramek od krawędzi okna 320 Rysowanie ramek w oknie w nowym położeniu 321 Rysowanie okna na ekranie 322 Podsumowanie 322 19 WYKRYWANIE KOLIZJI 323 Przykładowy przebieg programu Wykrywania kolizji" 324 Kod źródłowy programu Wykrywanie kolizji" 325 Importowanie modułów 327 Sterowanie szybkością programu za pomocą obiektu Clock 328 Konfiguracja okna i struktur danych 328 Konfiguracja zmiennych do śledzenia ruchu 330 Obsługa zdarzeń 330 Obsługa zdarzenia KEYDOWN 331 Obsługa zdarzenia KEYUP 334 Teleportowanie gracza 334 Dodawanie nowych kwadracików z pożywieniem 335 Poruszanie postacią gracza w obrębie okna 336 Rysowanie postaci gracza w oknie 336 Sprawdzanie, czy wystąpiła kolizja 337 Rysowanie w oknie kwadracików pożywienia 338 Podsumowanie 338 20 WYKORZYSTYWANIE DŹWIĘKÓW I OBRAZKÓW 339 Dodawanie obrazów za pomocą duszków 340 Pliki dźwiękowe i obrazkowe 340 Przykładowy przebieg programu Duszki i dźwięki" 341 Kod źródłowy programu Duszki i dźwięki" 342 Konfiguracja okna i struktury danych 345 Dodawanie duszka 345 Zmiana rozmiaru duszka 346 Konfigurowanie muzyki i dźwięków 346 Dodawanie plików dźwiękowych 346 Włączanie i wyłączanie dźwięku 347

Rysowanie w oknie postaci gracza 347 Sprawdzanie kolizji 348 Rysowanie czereśni w oknie 349 Podsumowanie 349 21 DODGER"- GRA Z OBRAZEM I DŹWIĘKIEM 351 Powtórka z podstawowych typów danych pygame 352 Przykładowy przebieg gry Dodger" 353 Kod źródłowy gry Dodger" 353 Importowanie modułów 358 Konfiguracja stałych 359 Definiowanie funkcji 360 Zatrzymywanie i pauzowanie gry 360 Sprawdzanie kolizji z paskudami 361 Rysowanie tekstu w oknie 362 Inicjalizacja pygame i konfiguracja okna 362 Konfiguracja obiektów Font, Sound i Image 363 Wyświetlanie ekranu startowego 364 Rozpoczynanie gry 365 Główna pętla gry 367 Obsługa zdarzeń klawiatury 367 Obsługa ruchów myszy 369 Dodawanie nowych paskud 369 Poruszanie postacią gracza i paskudami 371 Implementacja kodów oszukiwania 372 Usuwanie paskud 373 Rysowanie okna 373 Wyświetlanie wyniku gracza 374 Rysowanie postaci gracza oraz paskud 374 Sprawdzanie kolizji 375 Ekran z napisem Game Over 375 Modyfikowanie gry Dodger" 376 Podsumowanie 377 SKOROWIDZ 379 oprac. BPK