Spielfiguren korrekt laden

This commit is contained in:
2026-09-16 15:13:40 +02:00
parent 48b3769065
commit 2d907d8c5b
3 changed files with 58 additions and 26 deletions
+13 -9
View File
@@ -22,17 +22,14 @@ meinSpiel = MeinSpiel(FelderX, FelderY)
for fname in meinSpiel.hintergrundbilder:
try:
hintergrundBilder.append(pygame.image.load(fname))
except:
except (FileNotFoundError, pygame.error):
hintergrundBilder.append(pygame.image.load("Bilder/Grass.jpg"))
for fname in meinSpiel.bilder:
try:
pyGameBilder.append(pygame.image.load(fname))
except:
except (FileNotFoundError, pygame.error):
pyGameBilder.append(pygame.image.load("Bilder/Grass.jpg"))
# for fname in meinSpiel.hintergrundbilder:
# hintergrundBilder.append(pygame.image.load(fname))
background_img_wood = pygame.image.load(
"Bilder/wood-table-texture-background-cropped.jpg")
@@ -52,8 +49,8 @@ while True:
if event.type == QUIT or (event.type == KEYDOWN
and event.key == K_ESCAPE):
pygame.quit()
print(f"{int((pygame.mouse.get_pos()[0])/120)},
{int((pygame.mouse.get_pos()[1])/120)}")
# print(f"{int((pygame.mouse.get_pos()[0])/120)}, "
# f"{int((pygame.mouse.get_pos()[1])/120)}")
# Spiellogik
if event.type == KEYDOWN:
meinSpiel.tasteGedrueckt(event.key)
@@ -63,10 +60,17 @@ while True:
for x in range(FelderX):
for y in range(FelderY):
screen.blit(hintergrundBilder[meinSpiel.spielfeld[x][y]],(x*Pixel, y*Pixel))
screen.blit(pygame.image.load("Bilder/Spielfiguren/spielfigur-rot.png"),(5*Pixel, 1*Pixel))
for x in range(FelderX):
for y in range(FelderY):
for i, figur in enumerate(meinSpiel.spielfiguren[x][y]): # enumerate macht das gleiche wie range(len(meinSpiel.spielfiguren[x][y])), nur mit 2 Zählvariablen
# "i" beginnt bei jedem Feld wieder bei 0 - keine feste if-Abfrage jeder einzelnen Figur, um die Verschiebungsvariablen zu setzen, nötig
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(f"[{i}] Zeichne Figur {figur} auf Feld {x}, {y} mit Verschiebung {xVerschiebung}")
# Spielfeld/figuren zeichnen
# print(pyGameBilder)
# Fenster aktualisieren
pygame.display.flip()
clock.tick(FPS)