12. diel - Skákačka v Pygame - Herné objekty - vnútorné metódy
V predchádzajúcej lekcii, Skákačka v Pygame - Herné objekty , sme sa v našej Skákačke pustili do práce na samotných herných objektoch.
V nasledujúcom tutoriále Pygame v Pythone sa pozrieme na
vnútorné metódy triedy GameObject
. Väčšina z
nich bude neskôr prepísaná triedou, ktorá z nej bude dediť, deklarácia
metód by tu však nemala chýbať. V prípade, že by sme totiž zabudli v
dediacich triedach metódu definovať, naša hra by spadla. Takto sa ale zavolá
metóda nadradenej triedy a kód prejde bez problémov.
Pohyb v Skákačke
Začneme pohybom v hre. Herný objekt sa bude môcť pohybovať po osi xa y.
Použijeme na to metódu objektu pygame.Rect
s názvom
move_ip()
. Ip je skratka pre "in place". Rozdiel medzi metódami
move()
a move_ip()
je ten, že metóda
move()
vracia nový objekt pygame.Rect
so správnymi
súradnicami, zatiaľ čo move_ip()
mení súradnice pôvodného
objektu. Metódy pre pohyb teda budú vyzerať takto:
def move_x(self, delta: float) -> None: GameEngineLogger.debug(f"Moving object {delta}@X") self.rect.move_ip(delta, 0) def move_y(self, delta: float) -> None: GameEngineLogger.debug(f"Moving object {delta}@Y") self.rect.move_ip(0, delta)
...koniec náhľadu článku...
Pokračuj ďalej
Minul si až sem a to je super! Veríme, že ti prvé lekcie ukázali niečo nového a užitočného.
Chceš v kurze pokračovať? Prejdi do prémiové sekcie.
Kúpiť tento kurz
Pred kúpou tohto článku je potrebné kúpiť predchádzajúci diel
Obsah článku spadá pod licenciu Premium, kúpou článku súhlasíš so zmluvnými podmienkami.
- Neobmedzený a trvalý prístup k jednotlivým lekciím.
- Kvalitné znalosti v oblasti IT.
- Zručnosti, ktoré ti pomôžu získať vysnívanú a dobre platenú prácu.
Popis článku
Požadovaný článok má nasledujúci obsah:
V tomto tutoriále Pygame v Pythone budeme pokračovať v práci na samotných funkčných objektoch v našej Skákačke, konkrétne na vnútorných metódach triedy.
Kredity získaš, keď podporíš našu sieť. To môžeš urobiť buď zaslaním symbolickej sumy na podporu prevádzky alebo pridaním obsahu na sieť.