import copy import pygame import random class MeinSpiel: bilder = ["Bilder/Spielfiguren/spielfigur-rot.png", "Bilder/Spielfiguren/spielfigur-gelb.png", "Bilder/Spielfiguren/spielfigur-gruen.png", "Bilder/Spielfiguren/spielfigur-blau.png"] wuerfel = ["Bilder/wurfel-1.png", "Bilder/wuerfel-2.png", "Bilder/wuerfel-3.png", "Bilder/wurfel-4.png", "Bilder/wurfel-5.png", "Bilder/wuerfel-6.png"] hintergrundbilder = [] spielfeld = [] spielfiguren = [] figur_entfernt = False am_zug = 0 bewegungsrichtung = "rechts" zufallswert = int() wuerfelBildAnzeigen = False def __init__(self, felderX, felderY): for x in range(felderX): self.spielfeld.append([]) self.spielfiguren.append([]) for y in range(felderY): self.hintergrundbilder.append( f"Bilder/Hintergrundpixel/background_{x}-{y}.jpg") self.spielfeld[x].append((7*x+y)) self.spielfiguren[x].append([]) def anfangsKonfiguration(self): self.spielfiguren[0][0].append(0) self.spielfiguren[0][0].append(1) self.spielfiguren[0][0].append(2) self.spielfiguren[0][0].append(3) def tasteGedrueckt(self, taste): if taste == pygame.K_SPACE: self.zufallswert = random.randint(1, 6) self.wuerfelBildAnzeigen = True for i in range(self.zufallswert): self.figur_entfernt = False print(f"[{i}] Figur {self.am_zug} geht {self.zufallswert}") for x in range(len(self.spielfiguren)): for y in range(len(self.spielfiguren[x])): try: if len(self.spielfiguren[x][y]) > 0 and self.figur_entfernt == False: if self.bewegungsrichtung == "rechts" and x == 6: self.bewegungsrichtung = "unten" # print(f"Figuren auf Feld ({x}|{y}): {self.spielfiguren[x][y]}") self.spielfiguren[x][y].pop(self.spielfiguren[x][y].index(self.am_zug)) self.figur_entfernt = True if self.bewegungsrichtung == "rechts": self.spielfiguren[x + 1][y].append(self.am_zug) elif self.bewegungsrichtung == "unten": self.spielfiguren[x][y + 1].append(self.am_zug) if x == 6 and self.am_zug == 3: self.bewegungsrichtung = "links" elif x == 0 and self.am_zug == 3: self.bewegungsrichtung = "rechts" elif self.bewegungsrichtung == "links": self.spielfiguren[x - 1][y].append(self.am_zug) print(f"[!] {x}") if x == 1 and self.am_zug == 3: self.bewegungsrichtung = "unten" elif self.bewegungsrichtung == "oben": # (wird wahrscheinlich nicht verwendet werden) self.spielfiguren[x][y + 1].append(self.am_zug) else: print(f'Die "bewegungsrichtung"-Variable hat einen ungültigen Wert: {str(self.bewegungsrichtung)}') print(self.bewegungsrichtung) else: # print(f"keine Figuren auf Feld ({x}|{y}): {self.spielfiguren[x][y]}") break except ValueError: # print(f"x: {x}, y: {y}") break print("____________") self.am_zug += 1