diff options
| author | Leander <80996591+m0ntagur@users.noreply.github.com> | 2023-01-23 15:31:30 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-01-23 15:31:30 +0100 |
| commit | 7ea8f8fd31c8a39876cf115cd168ba6654ec98c6 (patch) | |
| tree | 2293019a8e63b36ddb9a6b2b5b69ee50850f973f /Steuerung.py | |
Add files via upload
Diffstat (limited to 'Steuerung.py')
| -rw-r--r-- | Steuerung.py | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/Steuerung.py b/Steuerung.py new file mode 100644 index 0000000..7f0a592 --- /dev/null +++ b/Steuerung.py @@ -0,0 +1,62 @@ +import pygame
+from Szenen import *
+
+class Steuerung():
+ def __init__(self):
+ self.__szene = Menue()
+ self.__szenenIndex = 0
+ self.__verlasseSpiel = False
+ self.__spielerListe = []
+ self.__loop()
+
+ def __sotiereSpielerListe(self):
+ self.__spielerListe.sort(key=lambda spieler: spieler[1], reverse=True)
+
+ def __addSpieler(self, spielerName: str, spielerScore: int):
+ gibtSpieler = False
+ for spieler in range(len(self.__spielerListe)):
+ if self.__spielerListe[spieler][0] == spielerName:
+ gibtSpieler = True
+ self.__spielerListe[spieler][1] = spielerScore
+ if not gibtSpieler:
+ self.__spielerListe.append((spielerName, spielerScore))
+
+ def __verlasseSpiel(self):
+ self.__verlasseSpiel = True
+
+ def __wechselSzene(self):
+ self.__szenenIndex += 1
+ if self.__szenenIndex > 3:
+ self.__szenenIndex = 0
+ match(self.__szenenIndex):
+ case 0:
+ self.__szene = Menue()
+ case 1:
+ self.__szene = Game()
+ case 2:
+ score = self.__szene.getScore()
+ self.__szene = Benennung(score)
+ case 3:
+ score = self.__szene.getScore()
+ name = self.__szene.getName()
+ self.__addSpieler(name, score)
+ self.__sotiereSpielerListe()
+ self.__szene = Score(self.__spielerListe)
+
+
+ def __loop(self):
+ while not self.__szene == None and not self.__verlasseSpiel:
+ events = []
+ for event in pygame.event.get():
+ if event.type == pygame.QUIT:
+ self.__verlasseSpiel = True
+ if event.type == pygame.KEYDOWN:
+ events.append(event)
+ self.__szene.beiEingabe(events)
+
+ self.__szene.beiUpdate()
+
+ self.__szene.beiZeichne()
+
+ if self.__szene.getWechselSzene():
+ self.__wechselSzene()
\ No newline at end of file |
