7.10.
This commit is contained in:
@@ -45,6 +45,15 @@ Code um einen Stein am oberen Spielfeldrand erscheinen zu lassen funktioniert no
|
||||
|
||||
Beeren spawnen jetzt am oberen Spielfeldrand und sollten runterfallen, aber das Feld füllt sich leider komplett mit Beeren. Trotzdem kann man die Beeren einsammeln und Idee zum Punkte zählen habe ich auch.
|
||||
|
||||
### 6.10.2026
|
||||
|
||||
Die Beeren spawnen jetzt nicht mehr überall auf dem Spielfeld, sondern nur noch am oberen Spielfeldrand und fallen dann so wie gewollt nach unten. Die Beeren können auch aufgesammelt werden, aber werden noch nicht gezählt oder irgendwie im Score festgehalten.
|
||||
|
||||
### 7.10.2026
|
||||
|
||||
Nun fallen nicht mehr nur Beeren ,sondern auch Steine vom Himmel. Diese erscheinen nur halb so häufig wie die Beeren. Steine sollen den Vogel erschlagen und zum verlieren bringen, dies ist aber noch nicht ganz fertig.
|
||||
Ich habe auch noch versucht den Vogel am anderen Spielfeldrand erscheinen zu lassen, wenn er das Spielfeld verlässt, aber auch das habe ich noch nicht hinbekommen und muss noch gemacht werden.
|
||||
|
||||
## Bildquellen
|
||||
|
||||
[Grass Image by macrovector on Freepik](https://www.freepik.com/free-vector/seamless-green-grass-pattern_13187581.htm#query=grass%20texture&position=0&from_view=keyword&track=ais&uuid=c689b011-652b-4ad1-a90a-bf3c50762622)
|
||||
|
||||
+36
-34
@@ -16,7 +16,7 @@ class MeinSpiel:
|
||||
def anfangsKonfiguration(self):
|
||||
self.spielfeld[0][13]=0
|
||||
|
||||
def erstelle_neues_objekt(self):
|
||||
def erstelle_neues_objekt1(self):
|
||||
# zufällige x Koordinate am oberen Spielfeldrand
|
||||
zufall_x = random.randint(0, len(self.spielfeld)- 1)
|
||||
|
||||
@@ -24,6 +24,17 @@ class MeinSpiel:
|
||||
if self.spielfeld[zufall_x][0] == 2:
|
||||
self.spielfeld[zufall_x][0] = 3
|
||||
|
||||
def erstelle_neues_objekt2(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] = 1
|
||||
|
||||
|
||||
|
||||
|
||||
def objekt_fallen_lassen(self):
|
||||
kontrollfeld = copy.deepcopy(self.spielfeld)
|
||||
max_x = len(self.spielfeld)
|
||||
@@ -47,16 +58,26 @@ class MeinSpiel:
|
||||
elif self.spielfeld[x][y + 1] == 2:
|
||||
kontrollfeld[x][y + 1] = 3
|
||||
kontrollfeld[x][y] = 2
|
||||
|
||||
for x in range(max_x):
|
||||
for y in range(max_y - 1, -1, -1):
|
||||
if self.spielfeld[x][y] == 1:#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] = 1#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] = 1
|
||||
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)
|
||||
@@ -75,7 +96,8 @@ class MeinSpiel:
|
||||
if self.spielfeld [x][y] == 0:
|
||||
kontrollfeld [x + 1] [y] = 0
|
||||
kontrollfeld [x][y] = 2
|
||||
|
||||
# if kontrollfeld[x + 1][y] == 1:
|
||||
# kontrollfeld[x][y] = 1
|
||||
|
||||
if pygame.K_w == taste :
|
||||
print("up")
|
||||
@@ -92,15 +114,14 @@ class MeinSpiel:
|
||||
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 > 13][y] == 0:
|
||||
# self.spielfeld[0][y] = 0
|
||||
|
||||
if self.spielfeld [x][y] == 0:
|
||||
kontrollfeld [x - 1] [y] = 0
|
||||
kontrollfeld [x] [y] = 2
|
||||
@@ -111,22 +132,3 @@ class MeinSpiel:
|
||||
|
||||
|
||||
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
|
||||
+5
-1
@@ -49,9 +49,13 @@ while True:
|
||||
|
||||
#Spawn und automatische Bewegung
|
||||
if frame_zaehler % 50 == 0:
|
||||
meinSpiel.erstelle_neues_objekt()
|
||||
meinSpiel.erstelle_neues_objekt1()
|
||||
meinSpiel.objekt_fallen_lassen()
|
||||
|
||||
if frame_zaehler % 100 == 0:
|
||||
meinSpiel.erstelle_neues_objekt2()
|
||||
|
||||
|
||||
# Spielfeld/figuren zeichnen
|
||||
|
||||
# Fenster aktualisieren
|
||||
|
||||
Reference in New Issue
Block a user