09.09.2026
This commit is contained in:
Binary file not shown.
|
After Width: | Height: | Size: 24 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 3.2 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 3.2 KiB |
@@ -1,3 +1,13 @@
|
|||||||
# E-To-niklas-Hasenspiel
|
# E-To-niklas-Hasenspiel
|
||||||
|
|
||||||
## Spielidee
|
## Spielidee
|
||||||
|
9.9.2026
|
||||||
|
Spielidee: Schatzsuche
|
||||||
|
|
||||||
|
Ich möchte ein Schatzsuche-Spiel entwickeln. Der Spieler bewegt sich auf einem 14×14-Raster durch eine geheimnisvolle Landschaft. Auf dem Spielfeld sind verschiedene Hindernisse verteilt, die den Weg versperren.
|
||||||
|
|
||||||
|
Der Spieler muss sich durch das Spielfeld bewegen und dabei Schlüssel einsammeln, um am Ende eine Schatzkiste öffnen zu können. Dabei sollte er möglichst wenige Schritte benötigen und Hindernissen ausweichen.
|
||||||
|
|
||||||
|
Ziel des Spiels:
|
||||||
|
Finde alle benötigten Schlüssel und erreiche die Schatzkiste. Je weniger Schritte der Spieler dafür benötigt, desto höher ist seine Punktzahl.
|
||||||
|
## Bildquellen
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
import copy
|
||||||
|
import pygame
|
||||||
|
|
||||||
|
class MeinSpiel:
|
||||||
|
bilder = ["Bilder/grün hinter.jpg" "Bilder/schatzsucher.jpg"]
|
||||||
|
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] =1
|
||||||
|
|
||||||
|
def tasteGedrueckt(self, taste):
|
||||||
|
print("taste gedrückt")
|
||||||
|
|
||||||
|
|
||||||
+51
@@ -0,0 +1,51 @@
|
|||||||
|
# Importieren u. initialisieren der Pygame-Bibliothek
|
||||||
|
from meinspiel import MeinSpiel
|
||||||
|
import pygame
|
||||||
|
from pygame.locals import *
|
||||||
|
pygame.init()
|
||||||
|
|
||||||
|
|
||||||
|
# Variablen/KONSTANTEN setzen
|
||||||
|
Breite, Hoehe = 840, 840
|
||||||
|
Pixel = 60
|
||||||
|
FelderX, FelderY = int(Breite / Pixel), int(Hoehe / Pixel)
|
||||||
|
FPS = 60
|
||||||
|
GRUEN= ( 0, 153, 0)
|
||||||
|
WEISS = ( 255, 255, 255)
|
||||||
|
pyGameBilder = []
|
||||||
|
|
||||||
|
# Bilder aus meinSpiel werden für pygame vorbereitet
|
||||||
|
meinSpiel = MeinSpiel(FelderX, FelderY)
|
||||||
|
for fname in meinSpiel.bilder:
|
||||||
|
pyGameBilder.append(pygame.image.load(fname))
|
||||||
|
|
||||||
|
#Anfangskonfiguration für das Spielfeld wird geladen
|
||||||
|
meinSpiel.anfangsKonfiguration()
|
||||||
|
|
||||||
|
# Definieren und Öffnen eines neuen Fensters
|
||||||
|
fenster = pygame.display.set_mode((Breite, Hoehe))
|
||||||
|
pygame.display.set_caption("Mein erstes Spiel")
|
||||||
|
clock = pygame.time.Clock()
|
||||||
|
|
||||||
|
# Schleife Hauptprogramm
|
||||||
|
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):
|
||||||
|
pygame.quit()
|
||||||
|
|
||||||
|
# Spiellogik
|
||||||
|
if event.type==KEYDOWN:
|
||||||
|
meinSpiel.tasteGedrueckt(event.key)
|
||||||
|
# Spielfeld löschen
|
||||||
|
fenster.fill(GRUEN)
|
||||||
|
for x in range(FelderX):
|
||||||
|
for y in range(FelderY):
|
||||||
|
fenster.blit(pyGameBilder[meinSpiel.spielfeld[x][y]],(x*Pixel,y*Pixel))
|
||||||
|
|
||||||
|
# Spielfeld/figuren zeichnen
|
||||||
|
|
||||||
|
# Fenster aktualisieren
|
||||||
|
pygame.display.flip()
|
||||||
|
clock.tick(FPS)
|
||||||
Reference in New Issue
Block a user