09.09.2026

This commit is contained in:
alstergym
2026-09-09 10:58:25 +02:00
parent 1c504bc707
commit d6c25b2feb
11 changed files with 155 additions and 2 deletions
+121
View File
@@ -0,0 +1,121 @@
from meinspiel import MeinSpiel
import pygame
from pygame.locals import *
import random
pygame.init()
Spielerfigur = pygame.image.load("Bilder/Ritter2.png")
Gegner = pygame.image.load("Bilder/Goblin.png")
Herzen = pygame.image.load("Bilder/Herz.png")
spielerX = 6
spielerY = 6
HerzX = -1
GegnerX = (random.uniform(0,13))
GegnerY = (random.uniform(0,13))
Gegnerbewegung = 0.1
print(GegnerY)
print(GegnerX)
# Variablen/KONSTANTEN
Breite, Hoehe = 840, 840
Pixel = 60
FelderX, FelderY = int(Breite / Pixel), int(Hoehe / Pixel)
FPS = 60
SCHWARZ = (0, 0, 0)
WEISS = (255, 255, 255)
pyGameBilder = []
# Mein Spiel erstellen
meinSpiel = MeinSpiel(FelderX, FelderY)
# Bilder laden
for fname in meinSpiel.bilder:
pyGameBilder.append(pygame.image.load(fname))
# Anfangskonfiguration
meinSpiel.anfangsKonfiguration()
print(GegnerX)
# Fenster
fenster = pygame.display.set_mode((Breite, Hoehe))
pygame.display.set_caption("Medival Goblin Dungeon")
clock = pygame.time.Clock()
# Hauptschleife
while True:
# Ereignisse überprüfen
for event in pygame.event.get():
# Beenden
if event.type == QUIT:
pygame.quit()
exit()
if event.type == KEYDOWN:
if event.key == K_ESCAPE:
pygame.quit()
exit()
# Bewegung
if event.key == K_w:
spielerY -= 1
if event.key == K_s:
spielerY += 1
if event.key == K_a:
spielerX -= 1
if event.key == K_d:
spielerX += 1
meinSpiel.tasteGedrueckt(event.key)
# Spielfeld zeichnen
for x in range(FelderX):
for y in range(FelderY):
fenster.blit(
pyGameBilder[meinSpiel.spielfeld[x][y]],
(x * Pixel, y * Pixel)
)
# Lebensanzeige
for Herzposition in range(3):
fenster.blit(
Herzen,
(HerzX + Herzposition * 60, 0)
)
#Gegner Logik
GegnerY += Gegnerbewegung
GegnerX += Gegnerbewegung
if GegnerY < 13 or GegnerY > 0:
Gegnerbewegung *= -1
if GegnerX < 13 or GegnerX > 0:
Gegnerbewegung *= -1
# Spielfigur und Gegner zeichnen
fenster.blit(
Spielerfigur,
(spielerX * Pixel, spielerY * Pixel)
)
fenster.blit(
Gegner,
(GegnerX * Pixel, GegnerY * Pixel)
)
# Fenster aktualisieren
pygame.display.flip()
clock.tick(FPS)