Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
ef:pygame:example2 [2024/12/17 15:32] – angelegt lehmannref:pygame:example2 [2025/01/07 14:33] (aktuell) lehmannr
Zeile 1: Zeile 1:
 <sxh python> <sxh python>
-import pygame +import pygame # pygame-Bibliothekt importieren 
-import sys+import sys # verwendet man, um das Programm zu beenden
  
 # Pygame initialisieren # Pygame initialisieren
 pygame.init() pygame.init()
  
-# Bildschirm-Einstellungen +# Bildschirm-Einstellen 
-SCREEN_WIDTH = 800 +screen = pygame.display.set_mode((800600)) 
-SCREEN_HEIGHT = 600 +pygame.display.set_caption("Kollision und Steuerung")
-screen = pygame.display.set_mode((SCREEN_WIDTHSCREEN_HEIGHT)) +
-pygame.display.set_caption("Sprite Collision Detection")+
  
-# Farben+Konstanten für Farben definieren
 WHITE = (255, 255, 255) WHITE = (255, 255, 255)
 RED = (255, 0, 0) RED = (255, 0, 0)
 BLUE = (0, 0, 255) BLUE = (0, 0, 255)
  
-Sprite-Klasse erstellen+Spieler erstellen (erbt von pygame.sprite.Sprite)
 class Player(pygame.sprite.Sprite): class Player(pygame.sprite.Sprite):
     def __init__(self, x, y, color):     def __init__(self, x, y, color):
Zeile 26: Zeile 24:
         self.rect.topleft = (x, y)  # Startposition         self.rect.topleft = (x, y)  # Startposition
  
-    def update(self, keys):+    def update(self, keys): # update wird in jedem Frame aufgerufen
         # Bewegung mit Pfeiltasten         # Bewegung mit Pfeiltasten
         if keys[pygame.K_UP]:         if keys[pygame.K_UP]:
Zeile 55: Zeile 53:
 # Sprites zu Gruppen hinzufügen # Sprites zu Gruppen hinzufügen
 all_sprites.add(player) all_sprites.add(player)
-obstacle_group.add(obstacle) 
 all_sprites.add(obstacle) all_sprites.add(obstacle)
 +obstacle_group.add(obstacle)
  
 # Spiel-Loop # Spiel-Loop
Zeile 71: Zeile 69:
     player.update(keys)  # Bewegung des Spielers     player.update(keys)  # Bewegung des Spielers
  
-    # Kollisionserkennung+    # Kollisionserkennung: Sprite mit Gruppe testen, 
 +    # False heisst, dass der Sprite nicht gekillt wird, 
 +    # d.h. nicht aus der Gruppe genommen wird.
     if pygame.sprite.spritecollide(player, obstacle_group, False):     if pygame.sprite.spritecollide(player, obstacle_group, False):
         print("Kollision erkannt!")         print("Kollision erkannt!")
Zeile 81: Zeile 81:
  
     clock.tick(60)  # Bildrate auf 60 FPS begrenzen     clock.tick(60)  # Bildrate auf 60 FPS begrenzen
- 
  
 </sxh> </sxh>
  • ef/pygame/example2.1734445968.txt.gz
  • Zuletzt geändert: 2024/12/17 15:32
  • von lehmannr