Files
E-To-Tim-Hasenspiel/meinspiel.py
T
2026-10-06 12:09:17 +02:00

132 lines
4.4 KiB
Python

import copy
import pygame
import random
import copy
class MeinSpiel:
bilder = ["Bilder/fliegbird.jpg","Bilder/guterock.png","Bilder/yeswolke.jpg","Bilder/gutegrapes.jpg"]
spielfeld = []
def __init__(self, felderX, felderY):
for x in range(felderX):
self.spielfeld.append([])
for y in range(felderY):
self.spielfeld[x].append(2)
def anfangsKonfiguration(self):
self.spielfeld[0][13]=0
def erstelle_neues_objekt(self):
# zufällige x Koordinate am oberen Spielfeldrand
zufall_x = random.randint(0, len(self.spielfeld)- 1)
#nur wenn das Feld frei ist spawnen
if self.spielfeld[zufall_x][0] == 2:
self.spielfeld[zufall_x][0] = 3
def objekt_fallen_lassen(self):
kontrollfeld = copy.deepcopy(self.spielfeld)
max_x = len(self.spielfeld)
max_y = len(self.spielfeld[0])
#von unten nach oben durch das Feld= Objekte rutschen nicht im selben Durchlauf nach unten
for x in range(max_x):
for y in range(max_y - 1, -1, -1):
if self.spielfeld[x][y] == 3:#Objedkt gefunden
#Check 1: wird der Boden erreicht?
if y == max_y - 1:
kontrollfeld[x][y] = 2 # Objekt löschen
#Check 2: wird Figur getroffen
elif self.spielfeld[x][y +1] == 0:
kontrollfeld[x][y] = 2 #Objekt verschwindet
# self.punkte += 1 # Punkt kommt dazu
# print(self.punkte)
#fällt ganz normal
elif self.spielfeld[x][y + 1] == 2:
kontrollfeld[x][y + 1] = 3
kontrollfeld[x][y] = 2
self.spielfeld = kontrollfeld
# for i in range(3):
# x = random.randint(0, len(self.spielfeld) - 1)
# y = random.randint(0, len(self.spielfeld) - 1)
# while self.spielfeld[x][y] != 0:
# x = random.randint(0, len(self.spielfeld) - 1)
# y = random.randint(0, len(self.spielfeld) - 1)
# self.spielfeld[x][y] = 1
def tasteGedrueckt(self, taste):
kontrollfeld = copy.deepcopy(self.spielfeld)
max_x = len(self.spielfeld)
max_y = len(self.spielfeld[0])
if pygame.K_p == taste :
print("spawn")
self.spielfeld[1][13] = 0
if pygame.K_d == taste :
print("right")
for x in range(len(self.spielfeld)):
for y in range(len(self.spielfeld[x])):
if self.spielfeld [x][y] == 0:
kontrollfeld [x + 1] [y] = 0
kontrollfeld [x][y] = 2
if pygame.K_w == taste :
print("up")
for x in range(len(self.spielfeld)):
for y in range(len(self.spielfeld[x])):
if self.spielfeld [x][y] == 0:
kontrollfeld [x] [y - 1] = 0
kontrollfeld [x] [y] = 2
if pygame.K_s == taste :
print("down")
for x in range(len(self.spielfeld)):
for y in range(len(self.spielfeld[x])):
if self.spielfeld [x][y] == 0:
kontrollfeld [x] [y + 1] = 0
kontrollfeld [x] [y] = 2
if self.spielfeld[x > 13][y]:
x = 0
self.spielfeld[x][y]
if pygame.K_a == taste :
print("left")
for x in range(len(self.spielfeld)):
for y in range(len(self.spielfeld[x])):
if self.spielfeld [x][y] == 0:
kontrollfeld [x - 1] [y] = 0
kontrollfeld [x] [y] = 2
# if self.spielfeld[x > 13][y]:
# x = 0
# self.spielfeld[x][y]
self.spielfeld = kontrollfeld
#def anfangsKonfiguration(self):
# self.spielfeld[1][13] = 0
# for i in range(3):
# x = random.randint(0, len(self.spielfeld) - 1)
# y = random.randint(0, len(self.spielfeld) - 1)
#
# while self.spielfeld[x][y] != 0:
# x = random.randint(0, len(self.spielfeld) - 1)
# y = random.randint(0, len(self.spielfeld) - 1)
#
# self.spielfeld[x][y] = 1