29.09.2026 Stundenende

This commit is contained in:
alstergym
2026-09-29 12:10:29 +02:00
parent 582d855b01
commit fa36bb3060
2 changed files with 58 additions and 66 deletions
+4
View File
@@ -6,6 +6,10 @@ Ein Brettspiel (bei dem später eventuell mehrere Spieler zusammen bzw. abwechse
## Protokoll
## 29.09.2026
Ich habe versucht, dass die Figuren die Zufallsschritte gehen. Jedoch hat das bisher nicht funktioniert, da die Figuren beim Drücken der Leertaste trotzdem immer nur einen Schritt gehen. Ich habe mittlerweile herausgefunden, dass dies an der `self.figur_entfernt`-Variable liegt, welche in der meinspiel.py in Z. 45 dafür sorgt, dass die Bewegung nur ein einziges Mal ausgeführt wird und die darüberliegende for-Schleife quasi ignoriert wird.
### 23.09.2026
Die Figuren bewegen sich jetzt problemlos über das gesamte Spielfeld (wechseln jeweils am Zeilenende eine Zeile nach unten). Aktuell ist der Zufallsgenerator in der meinspiel.py nur halb fertig und muss noch fertiggestellt werden.
+53 -65
View File
@@ -37,78 +37,66 @@ class MeinSpiel:
if taste == pygame.K_SPACE:
zufallswert = random.randint(1, 6)
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"
for i in range(zufallswert):
print(f"{i}: {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
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
zielfeld = x + zufallswert
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)}')
if zielfeld <= 6: # wenn Figur in diesem Zug nicht die Zeile wechseln muss
for i in range(zufallswert):
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)
self.am_zug += 1
break
else:
schon_gegangen = zielfeld - 6
for i in range(schon_gegangen):
if self.bewegungsrichtung == "rechts":
self.spielfiguren[x + 1][y + 1].append(self.am_zug)
elif self.bewegungsrichtung == "links":
self.spielfiguren[x - 1][y + 1].append(self.am_zug)
else:
print(f'Die "bewegungsrichtung"-Variable hat einen ungültigen Wert: {str(self.bewegungsrichtung)}')
print(f"keine Figuren auf Feld ({x}|{y}): {self.spielfiguren[x][y]}")
except ValueError:
print(f"x: {x}, y: {y}")
print("____________")
# if len(self.spielfiguren[x][y]) > 0:
# figur = self.spielfiguren[x][y].pop()
# print(f"Bewege Figur {figur} von Feld {x}, {y}")
# if x < len(self.spielfiguren) - 1:
# self.spielfiguren[x + 1][y].append(figur)
# print(f"Bewege Figur {figur} auf Feld {x + 1}, {y}")
# else:
# self.spielfiguren[0][y].append(figur)
# print(f"Bewege Figur {figur} auf Feld 0, {y}")
#if len(self.spielfiguren[x][y]) > 0:
# print(self.spielfiguren[x][y])
# self.spielfiguren[x][y].pop(self.spielfiguren[x][y].index(1))
print(self.bewegungsrichtung)
self.am_zug += 1
break
else:
print(f"keine Figuren auf Feld ({x}|{y}): {self.spielfiguren[x][y]}")
except ValueError:
print(f"x: {x}, y: {y}")
print("____________")
# if len(self.spielfiguren[x][y]) > 0:
# figur = self.spielfiguren[x][y].pop()
# print(f"Bewege Figur {figur} von Feld {x}, {y}")
# if x < len(self.spielfiguren) - 1:
# self.spielfiguren[x + 1][y].append(figur)
# print(f"Bewege Figur {figur} auf Feld {x + 1}, {y}")
# else:
# self.spielfiguren[0][y].append(figur)
# print(f"Bewege Figur {figur} auf Feld 0, {y}")
#if len(self.spielfiguren[x][y]) > 0:
# print(self.spielfiguren[x][y])
# self.spielfiguren[x][y].pop(self.spielfiguren[x][y].index(1))
# if len(self.spielfiguren[x][y]) > 0:
# # print(str(x) + " | " + str(len(self.spielfiguren) - 1) + " | " + str(self.spielfiguren))
# self.spielfiguren[x][y].pop(
# self.spielfiguren[x][y].index(-1))
# if x < len(self.spielfiguren) - 1:
# self.spielfiguren[x + 1][y].append(3)
# else:
# self.spielfiguren[x - 1][y].append(3)
# if len(self.spielfiguren[x][y]) > 0:
# # print(str(x) + " | " + str(len(self.spielfiguren) - 1) + " | " + str(self.spielfiguren))
# self.spielfiguren[x][y].pop(
# self.spielfiguren[x][y].index(-1))
# if x < len(self.spielfiguren) - 1:
# self.spielfiguren[x + 1][y].append(3)
# else:
# self.spielfiguren[x - 1][y].append(3)
# def renderText(self, text: str, x: int, y: int, color: tuple):