Rozdział 8: Python — silnik naszej gry 🐍

Zanim zaczniemy budować grę, musimy poznać podstawy Pythona. Ten rozdział to szybkie wprowadzenie — nauczysz się akurat tego, co potrzebujesz do gry!

Wejdź do trybu interaktywnego:

cd ~/projekty/nyan-cat-runner
source venv/bin/activate
python3

Zobaczysz >>> — to interaktywna konsola Pythona! Możesz pisać kod i od razu widzieć wyniki.

Podstawy

# Wypisywanie tekstu
print("Nyan nyan nyan!")

# Zmienne (jak pudełka na dane)
imie_kota = "Nyan Cat"
punkty = 0
zyje = True

# Wypisywanie z f-stringiem (super wygodne!)
print(f"Gracz: {imie_kota}, Punkty: {punkty}")

# Matematyka
punkty = punkty + 10
print(f"Teraz mam {punkty} punktów!")

# Listy (jak szuflady z ponumerowanymi przegródkami)
przeszkody = ["kaktus", "skała", "dziura"]
print(przeszkody[0])    # "kaktus" — liczymy od 0!
przeszkody.append("mur")  # dodaj na koniec

# Warunek if
if punkty > 5:
    print("Świetny wynik!")
elif punkty > 0:
    print("Niezły start!")
else:
    print("Próbuj dalej!")

# Pętla for
for przeszkoda in przeszkody:
    print(f"Uwaga na: {przeszkoda}!")

# Pętla while
odliczanie = 3
while odliczanie > 0:
    print(f"{odliczanie}...")
    odliczanie = odliczanie - 1
print("Start!")

Wpisuj te rzeczy po kolei w konsoli Pythona i obserwuj co się dzieje!

Żeby wyjść z konsoli Pythona:

exit()

Albo Ctrl + D.

Funkcje

Funkcja to taki przepis — definiujesz ją raz, a potem możesz używać wiele razy:

def rysuj_kota():
    print("  /\\_/\\  ")
    print(" ( o.o ) ")
    print("  > ^ <  ")

# Użyj:
rysuj_kota()
rysuj_kota()  # narysuje drugiego kota!

Funkcja z parametrem:

def powitanie(imie):
    print(f"Cześć, {imie}! Gotowa na przygodę?")

powitanie("Nyan Cat")
powitanie("Gracz")

Słowniki

Słownik to jak prawdziwy słownik — ma klucze (słowa) i wartości (definicje):

gracz = {
    "imie": "Nyan Cat",
    "x": 5,
    "y": 10,
    "punkty": 0,
    "zycia": 3
}

print(gracz["imie"])
print(f"Pozycja: ({gracz['x']}, {gracz['y']})")
gracz["punkty"] += 100  # dodaj 100 punktów

Klasy (dla odważnych!)

Klasa to taki “plan budowy” obiektu:

class Kot:
    def __init__(self, imie):
        self.imie = imie
        self.x = 0
        self.y = 0
        self.punkty = 0

    def skocz(self):
        self.y += 3
        print(f"{self.imie} skoczył! y={self.y}")

    def spadaj(self):
        if self.y > 0:
            self.y -= 1

nyan = Kot("Nyan Cat")
nyan.skocz()
nyan.skocz()
nyan.spadaj()
print(f"{nyan.imie} jest na wysokości {nyan.y}")

Nie musisz teraz rozumieć wszystkiego — wrócimy do tego przy budowaniu gry!

🏆 Wyzwanie

  1. Otwórz konsolę Pythona (python3)
  2. Stwórz zmienną z imieniem Twojego kota
  3. Stwórz listę 5 przedmiotów do zbierania w grze
  4. Napisz funkcję rysuj_kota() z własnym kotem ASCII
  5. Wyjdź z konsoli (exit())
  6. Stwórz plik src/test_python.py, wpisz tam swoją funkcję i uruchom go!