Bewegungslogik umgebaut

This commit is contained in:
2026-10-26 20:09:06 +01:00
parent 995a28880d
commit 266f3ae1bc
4 changed files with 73 additions and 101 deletions
+10 -14
View File
@@ -36,7 +36,7 @@ for fname in meinSpiel.bilder:
for fname in meinSpiel.wuerfel:
try:
wuerfelBilder.append(pygame.image.load(fname))
except:
except (FileNotFoundError, pygame.error):
print("Fehler beim Laden der Würfelbilder")
background_img_wood = pygame.image.load(
@@ -55,11 +55,10 @@ while True:
# Überprüfen, ob Nutzer eine Aktion durchgeführt hat
for event in pygame.event.get():
# Beenden bei [ESC] oder [X]
if event.type == QUIT or (event.type == KEYDOWN
and event.key == K_ESCAPE):
if event.type == QUIT or (event.type == KEYDOWN and event.key == K_ESCAPE):
pygame.quit()
print(f"{int((pygame.mouse.get_pos()[0])/120)}, "
f"{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 == pygame.MOUSEBUTTONDOWN:
meinSpiel.mouseButtonClick(pygame.mouse.get_pos()[0], pygame.mouse.get_pos()[1])
@@ -70,24 +69,21 @@ while True:
# Spielfeld löschen
for x in range(FelderX):
for y in range(FelderY):
screen.blit(hintergrundBilder[meinSpiel.spielfeld[x][y]],(x*Pixel, y*Pixel))
screen.blit(hintergrundBilder[meinSpiel.spielfeld[x][y]], (x * Pixel, y * 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
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
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)
screen.blit(pyGameBilder[figur], (x * Pixel + xVerschiebung, y * Pixel + yVerschiebung))
# print(meinSpiel.zufallswert)
if meinSpiel.wuerfelBildAnzeigen:
screen.blit(pygame.image.load(f"Bilder/wuerfel-{meinSpiel.zufallswert}.png"), (310, 600))
pygame.draw.rect(screen, GRUEN, (290, 770, 200, 60))
screen.blit(pygame.font.Font("Bilder/NunitoSans-VariableFont.ttf", 38).render("WÜRFELN", True, (255, 255, 255)), (300, 775))
#print(f"[{i}] Figur {figur} auf Feld {x}, {y} mit Verschiebung {xVerschiebung}")
if meinSpiel.am_zug >= 4:
meinSpiel.am_zug = 0
meinSpiel.figur_entfernt = False
# print(f"[{i}] Figur {figur} auf Feld {x}, {y} mit Verschiebung {xVerschiebung}")
# Spielfeld/figuren zeichnen
# Fenster aktualisieren