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] == 2:#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 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 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