Python zajęcia 11
🐍 Nazwy zmiennych w funkcjach i klasach są prywatne dla danych funkcji, klas.
🚀Gry w Pythonie
🎮PyGameZero to uproszczona Pygame, która usuwa konieczność pisania boilerplate code — kodu startowego, który zwykle trzeba napisać, zanim gra w ogóle zacznie działać.
pip3 install pgzero🧱 Podstawowa struktura gry
import pgzrun
from pygame import display
from pgzero import screen as pgzero_screen
from pgzero.builtins import keyboard
# rozmiar okna - pozniej wrzucimy to do osobnego pliku
WIDTH = 800
HEIGHT = 600
screen = pgzero_screen.Screen(display.set_mode((WIDTH, HEIGHT), 0))\
def update():
# tu aktualizujemy stan obiektow
pass
def draw():
# tu je rysujemy
pass
# wywołanie pętli gry
pgzrun.go()🔧 Niezbędne funkcje i klasy
draw() — funkcja rysująca zawartość ekranu
update() — aktualizuje logikę gry
Klasa Actor - reprezentuje obiekt graficzny — np. postać, przycisk czy tło. Actor jest powiązany z obrazem (.png) w folderze images/. Pojawia się wszędzie gdzie obiekty wchodzą z sobą w interakcje. Zapewnia obsługę kolizji.
screen.draw.text() - tekst na ekranie (x,y) - współrzędne, gdzie tekst ma się pojawić (lewy górny róg 0.0)
🧲 Każdy Actor ma wbudowany prostokąt , który określa jego rozmiar. Metoda colliderect() sprawdza, czy prostokąt jednego aktora nachodzi na prostokąt drugiego