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
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

+11 -2
View File
@@ -1,2 +1,11 @@
# E-To-Linus-Hasenspiel
Olla
# MeinErstesSpiel
## Meine Spielidee
Man hat einen Ritter der in der Mitte des Spielfelds startet und sich mit seinem Schwert gegen Kobolde verteidige die immer zufällig aus den Spielfeldrändern kommen auf ihn zu laufen. Er muss sie mit seinem Schwert ermorden denn wenn nicht verliert er ein Leben.
#09.09.2026
Heute habe ich relativ viel geschafft. Ich habe es hinbekommen der Spieler zu bewegen und habe außerdem noch mehrere Grafiken eingebaut wie zum Beispiel ein Herz für die Lebensanzeige und einen Kobold als Gegener. Jetzt probiere ich den Kobold zum Spieler gehen zu lassen. Jedoch läuft der Kobold noch aus dem Spielfeld heraus. Dies probiere ich nächste Woche zu verbessern.
# Bildquellen:
+23
View File
@@ -0,0 +1,23 @@
import copy
import pygame
Startpositionx = (2)
Startpositiony = (2)
class MeinSpiel:
bilder = ["Bilder/steinboden.png","Bilder/Grass.jpg","Bilder/Ritter2.png"]
spielfeld = []
def __init__(self, felderX, felderY):
for x in range(felderX):
self.spielfeld.append([])
for y in range(felderY):
self.spielfeld[x].append(0)
def anfangsKonfiguration(self):
self.spielfeld[5][5] = 0
def tasteGedrueckt(self, taste):
if pygame.K_w == taste:
print(taste)
+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)