This commit is contained in:
alstergym
2026-09-09 10:58:23 +02:00
parent eceb598f9b
commit 56905aae9b
13 changed files with 142 additions and 0 deletions
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

+50
View File
@@ -1,2 +1,52 @@
# E-To-Tim-Hasenspiel # E-To-Tim-Hasenspiel
## Meine Spielidee
### Bird Dodge
Man spielt einen Vogel der verschiedenen schlechten Objekten, die auf ihn fallen, ausweichen muss.
Zwischendurch werden auch gute Objekte vom Himmel fallen, wie zum Beispiel Beeren oder Früchte. Jedes gute Objekt das aufgesammelt wurde bringt dem Spieler einen Punkt zu seinem Score.
Das Ziel ist es, so viele Punkte wie möglich zu sammeln, bevor man von einem schlechten Objekt getroffen wird, um so seinen Highscore zu erhöhen.
Den Vogel steuert man frei in jede richtung, während die Objekte von oben auf ihn herabregnen.
Gesteuert wird mit den Tasten W, A, S und D.
## Protokoll
### 8.9.2026
Spieleidee entwickelt und erläutert.
Bildquellen angegeben und die Bilder soweit bearbeitet das sie zumindest annähernd zum Hintergrund passen.
Die erten Bilder eingefügt und auf dem Spielfeld sichtbar gemacht.
Farben der Bilder nochmal angepasst um fließend in den Hintergrund zu verlaufen.
### 9.9.2026
Repositorie gemacht.
## 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)
[Rabbit Symbol by torskaya on Freepik](https://www.freepik.com/icon/rabbit_2687160#fromView=search&page=1&position=19&uuid=3c377ca9-cb56-4be7-aebe-0bcac1702034)
[yeswolke.jpg](www.bing.com/images/search?view=detailV2&ccid=E5%2bJsB2O&id=A3C6BBE734440900D253934B9F9350FC46654B35&thid=OIP.E5-JsB2OHCJtmmhRyAypoQHaHa&mediaurl=https%3a%2f%2fimg.freepik.com%2fvektoren-premium%2fcartoon-ikone-der-kleinen-flauschigen-wolke-die-am-himmel-fliegt-flaches-vektorelement-fuer-kindergeschichtenbuch-oder-grusskarte_223337-8447.jpg&cdnurl=https%3a%2f%2fth.bing.com%2fth%2fid%2fR.139f89b01d8e1c226d9a6851c80ca9a1%3frik%3dNUtlRvxQk59Lkw%26pid%3dImgRaw%26r%3d0&exph=626&expw=626&q=Himmel+Cartoon+eine+wolke&FORM=IRPRST&ck=64C23B90BE4690235DC3AA895E2709CA&selectedIndex=83&itb=0)
[gutegrapes.jpg](https://www.bing.com/images/search?view=detailV2&ccid=7oQw0V%2f%2b&id=8F7F7F206A9968FEACBE6C5CCD22FDC66E63DB03&thid=OIP.7oQw0V_-HdYi2jNF6hindwHaE6&mediaurl=https%3a%2f%2fwww.freepnglogos.com%2fuploads%2fgrapes-png%2fmzr-red-grapes-36.png&cdnurl=https%3a%2f%2fth.bing.com%2fth%2fid%2fR.ee8430d15ffe1dd622da3345ea18a777%3frik%3dA9tjbsb9Is1cbA%26pid%3dImgRaw%26r%3d0&exph=1329&expw=2000&q=grapes+png&FORM=IRPRST&ck=2EEA2DED2F6A363B7A07A1CA7C30E2FA&selectedIndex=0&itb=1&ajaxhist=0&ajaxserp=0)
[guterock.jpg](https://www.bing.com/images/search?view=detailV2&ccid=M%2bC3yN5b&id=19F3110BB8E1E41DF53EC745E364C1DB82627B7D&thid=OIP.M-C3yN5b1chAbGPzB3JW-gHaF-&mediaurl=https%3a%2f%2fi.pinimg.com%2foriginals%2f08%2f5d%2fb3%2f085db39af6bdf1f0d607584bd8f105d3.png&cdnurl=https%3a%2f%2fth.bing.com%2fth%2fid%2fR.33e0b7c8de5bd5c8406c63f3077256fa%3frik%3dfXtigtvBZONFxw%26pid%3dImgRaw%26r%3d0&exph=1168&expw=1447&q=rock+png&FORM=IRPRST&ck=D88D06FCC99FCCFAB523D24E40310DE2&selectedIndex=3&itb=1&ajaxhist=0&ajaxserp=0)
+42
View File
@@ -0,0 +1,42 @@
import copy
import pygame
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[6][5] = 0
#self.spielfeld[6][6] = 3
#self.spielfeld[6][7] = 1
#def tasteGedrueckt(self, taste):
print("taste gedrückt")
def tasteGedrueckt(self, taste):
if pygame.K_d == taste :
print("right")
self.spielfeld[0][13] = 0
for x in range(len(self.spielfeld)):
for y in range(len(self.spielfeld)):
if self.spielfeld[x][y] == 0:
self.spielfeld[x + 1][y] = 0
self.spielfeld[x][y] = 2
#def tasteGedrueckt(self, taste):
if pygame.K_d == taste:
for x in range(len(self.spielfeld)):
for y in range(len(self.spielfeld)):
if self.spielfeld[x][y] == 0:
self.spielfeld[x + 1][y] = 0
self.spielfeld[x][y] = 2
+50
View File
@@ -0,0 +1,50 @@
# 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
SCHWARZ = ( 0, 0, 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
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)