Files
E-To-Aron-Hasenspiel/main.py
T
2026-09-16 11:00:17 +02:00

71 lines
2.3 KiB
Python

# 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 = 120
FelderX, FelderY = int(Breite / Pixel), int(Hoehe / Pixel)
FPS = 60
SCHWARZ = ( 0, 0, 0 )
WEISS = ( 255, 255, 255 )
pyGameBilder = []
hintergrundBilder = []
# surface = pygame.Surface((400, 300))
# Bilder aus meinSpiel werden für pygame vorbereitet
meinSpiel = MeinSpiel(FelderX, FelderY)
for fname in meinSpiel.hintergrundbilder:
try:
hintergrundBilder.append(pygame.image.load(fname))
except:
hintergrundBilder.append(pygame.image.load("Bilder/Grass.jpg"))
for fname in meinSpiel.bilder:
try:
pyGameBilder.append(pygame.image.load(fname))
except:
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")
#Anfangskonfiguration für das Spielfeld wird geladen
meinSpiel.anfangsKonfiguration()
# Definieren und Öffnen eines neuen Fensters
screen = pygame.display.set_mode((Breite, Hoehe))
pygame.display.set_caption("Brettspiel")
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()
print(f"{int((pygame.mouse.get_pos()[0])/120)}, {int((pygame.mouse.get_pos()[1])/120)}")
# Spiellogik
if event.type==KEYDOWN:
meinSpiel.tasteGedrueckt(event.key)
#screen.blit(background_img_wood, (0,0)) <--------- festes, großes Hintergrundbild
# 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(pygame.image.load("Bilder/Spielfiguren/spielfigur-rot.png"),(5*Pixel,1*Pixel))
# Spielfeld/figuren zeichnen
#print(pyGameBilder)
# Fenster aktualisieren
pygame.display.flip()
clock.tick(FPS)