06.10.2026 Stundenende

This commit is contained in:
alstergym
2026-10-06 12:11:19 +02:00
parent dafff6467a
commit 3b1632af5e
3 changed files with 24 additions and 15 deletions
+6
View File
@@ -6,6 +6,12 @@ Ein Brettspiel (bei dem später eventuell mehrere Spieler zusammen bzw. abwechse
## Protokoll
## 06.10.2026
*(heute Doppelunterricht in Vertretungsstunde bei Frau Wilmsen)*
Es gab ein Problem mit der bewegungsrichtung-Variable, das dafür gesorgt hat, dass teilweise die falschen Figuren in die falsche Richtung bewegt wurden, da diese eine Variable für alle Figuren galt. Um das Problem zu beheben, habe ich die bewegungsrichtung-Variable vom Typ "string" zum Typ "dictionary" geändert, sodass Wertzuweisungen wie z. B. `{0: 'rechts', 1: 'rechts', 2: 'rechts', 3: 'rechts'}` entstehen, also jede Figur eine eigene Bewegungsrichtung, unabhängig von den anderen, haben kann. Jedoch führt dies nun am Ende des Spielfelds (rechts) wieder zu einem `IndexError: list index out of range`, den ich noch nicht beheben konnte.
## 30.09.2026
Die Figuren auf dem Spielfeld gehen die gewünschte Anzahl an Zufallsschritten und die Würfelbilder werden auch schon angezeigt (aber noch nicht wieder ausgeblendet nach einer bestimmten Zeit). Jedoch kommt es in der zweiten Zeile an einem Punkt zu einem Fehler, der dazu führt, dass die Figuren sich nicht mehr weiter bewegen (bzw. auch schon beim Wechsel aus der ersten in die zweite Zeile "zu weit laufen"). Ich habe außerdem die erste Zeile des Hintergrunds mit nummerierten Feldern und Pfeilen, die die Bewegungsrichtung verständlicher machen sollen, ausgestaltet.
+1 -1
View File
@@ -76,7 +76,7 @@ while True:
xVerschiebung = i * 30 # Verschiebung um 30 Pixel nach rechts, jede Figur im selben Feld etwas weiter
yVerschiebung = 0
screen.blit(pyGameBilder[figur], (x*Pixel + xVerschiebung, y*Pixel + yVerschiebung))
print(meinSpiel.zufallswert)
#print(meinSpiel.zufallswert)
if meinSpiel.wuerfelBildAnzeigen:
screen.blit(pygame.image.load(f"Bilder/wuerfel-{meinSpiel.zufallswert}.png"), (310, 600))
#print(f"[{i}] Figur {figur} auf Feld {x}, {y} mit Verschiebung {xVerschiebung}")
+17 -14
View File
@@ -20,7 +20,7 @@ class MeinSpiel:
figur_entfernt = False
am_zug = 0
bewegungsrichtung = "rechts"
bewegungsrichtung = {}
zufallswert = int()
wuerfelBildAnzeigen = False
@@ -40,6 +40,11 @@ class MeinSpiel:
self.spielfiguren[0][0].append(2)
self.spielfiguren[0][0].append(3)
for i in range(4):
self.bewegungsrichtung[i] = "rechts"
print(f"ANFANGSWERT BEWEGUNGSRICHTUNG: für {i}")
print(self.bewegungsrichtung)
def tasteGedrueckt(self, taste):
if taste == pygame.K_SPACE:
self.zufallswert = random.randint(1, 6)
@@ -48,31 +53,29 @@ class MeinSpiel:
for i in range(self.zufallswert):
self.figur_entfernt = False
print(f"[{i}] Figur {self.am_zug} geht {self.zufallswert}")
print(f"[Schritt {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":
if self.bewegungsrichtung[self.am_zug] == "rechts":
self.spielfiguren[x + 1][y].append(self.am_zug)
elif self.bewegungsrichtung == "unten":
if x == 6: self.bewegungsrichtung[self.am_zug] = "unten"
if self.bewegungsrichtung[self.am_zug] == "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":
if x == 6: self.bewegungsrichtung[self.am_zug] = "links"
elif x == 0: self.bewegungsrichtung[self.am_zug] = "rechts"
if self.bewegungsrichtung[self.am_zug] == "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)
if x == 1 and self.am_zug == 3: self.bewegungsrichtung[self.am_zug] = "unten"
if self.bewegungsrichtung[self.am_zug] == "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(f'Die "bewegungsrichtung"-Variable hat einen ungültigen Wert: {str(self.bewegungsrichtung[self.am_zug])}')
print(self.bewegungsrichtung)