52 lines
1.0 KiB
Python
52 lines
1.0 KiB
Python
import pygame
|
|
|
|
|
|
class Game:
|
|
"""Basisklasse für Pygame-Spiele."""
|
|
|
|
def __init__(
|
|
self,
|
|
title: str = "Game",
|
|
fps: int = 60,
|
|
size: tuple[int, int] = (640, 400),
|
|
) -> None:
|
|
|
|
pygame.init()
|
|
|
|
self.title = title
|
|
self.fps = fps
|
|
self.size = size
|
|
|
|
self.screen = pygame.display.set_mode(size)
|
|
pygame.display.set_caption(title)
|
|
|
|
self.clock = pygame.time.Clock()
|
|
|
|
def update_game(self) -> bool:
|
|
"""Aktualisiert den Spielzustand."""
|
|
return True
|
|
|
|
def draw_game(self) -> None:
|
|
"""Zeichnet das Spiel."""
|
|
pass
|
|
|
|
def run(self) -> None:
|
|
"""Startet die Spielschleife."""
|
|
|
|
running = True
|
|
|
|
while running:
|
|
|
|
for event in pygame.event.get():
|
|
if event.type == pygame.QUIT:
|
|
running = False
|
|
|
|
if running:
|
|
running = self.update_game()
|
|
|
|
if running:
|
|
self.draw_game()
|
|
|
|
self.clock.tick(self.fps)
|
|
|
|
pygame.quit() |