From 57bf9df8843aac52f60910ee22013a79c5c8f739 Mon Sep 17 00:00:00 2001 From: alstergym Date: Wed, 30 Sep 2026 11:06:35 +0200 Subject: [PATCH] 30.09. --- Bilder/angriff1.xcf | Bin 0 -> 2220 bytes README.md | 3 ++ meinspiel.py | 89 ++++++++++++++++++++++++++++---------------- starten.py | 35 +++++++++++------ 4 files changed, 83 insertions(+), 44 deletions(-) create mode 100644 Bilder/angriff1.xcf diff --git a/Bilder/angriff1.xcf b/Bilder/angriff1.xcf new file mode 100644 index 0000000000000000000000000000000000000000..5e2cb0195f721918de38150223883ae6630b5bcf GIT binary patch literal 2220 zcmbtWTTj$L6kfalSw&IN#KecOY8Eux&Mpa;O?L@535f*4C7|J@w9|Hy-qH?Oe9;Gg zgHOKr=Ku1C;5plNcR-e1aGEpo&CEI9oIPhQ>u^6JscDlFTC0_y=(!;N0rCiBXb7q& zAfwALgaTy(T$9H6e6q3^RmK)-~OkC$U+2xgJbT)1RyePat} z#@njgHyl=VVs7CWXb(M~OvI_jND_M7nkrA)jv0DkTqaN^+mI;Rm9@%JWs%rkXb6SW zW{7e~ulVYe9?s4xgiZnB(KQG&!#49(FlSDa$S`@}kQ#+`PS5r7PW3q8g7Cm}Spqs~ zXxj-B;27vjID_YvF+dYi(0nEg%MeB$xVxslkoq1uVR6F4pjoM@v_e>5h8DQgtnBT+ zug+B#T4lX3Y(Y$QVK^i(eAZM}Q*Nv4m=AS{i)4$%JBA;5Oli##_;d|adz-94hIhFS z+I3o=Y0&w`G$mNi0v^zIGv*Et4DTi!ZO1>bz!9#}nxTDGY-{gxYar!q27B>XKv4G} zdEi_h@`J8{(we4JtMxJXIJm)<8;Vd}#uKpvn+?L^Dk60-ua75odct{2_&Bsa@Y z#e(K7N9zsRJ4qJ}B;T)T*>(7$A#Qp+l#E0%vw7N7B8+X~hLJ*!W3Q>WLPQNs z3li0^!Xu`_wWf7+G&o+G($cjK&xNyb;74jlTg5Eo*I*X^DxI%R)7|2P^!G0HuktH3 zqJcaD7B%w&JsQZB?hS!I2?;jxo9BNh;8wCvZ$Pjf2~%B+B9EH}9?5#I&|Y@t{x!z! z*vZSK$5 zV`xe*BwUs-k?>my-;?lt36DwmAz)muC?f!HZCvY3j-e^NMtlYZ+E)^m{{+BrQAXVY fNo^4g 0: - xpos -= 1 + if xrichtung == 2 and posx > 0: + posx -= 1 self.cooldownx = 100 if self.cooldownx != 1: @@ -141,16 +166,16 @@ class monster: yrichtung = random.randint(1,50*(self.cooldowny)) - if yrichtung == 1 and xpos < 41: - ypos += 1 + if yrichtung == 1 and posy < 41: + posy += 1 self.cooldowny = 100 - if yrichtung == 2 and ypos > 0: - ypos -= 1 + if yrichtung == 2 and posy > 0: + posy -= 1 self.cooldowny = 100 if self.cooldowny != 1: self.cooldowny -= 1 - return xpos,ypos + return posx,posy diff --git a/starten.py b/starten.py index 0356f4d..82ccca4 100644 --- a/starten.py +++ b/starten.py @@ -16,20 +16,22 @@ WEISS = ( 255, 255, 255) Beigegelb = ( 226, 181, 97 ) pyGameBilderebene0 = [] pyGameBilderebene1 = [] +pyGameBilderebene2 = [] xverschiebung = 0 yverschiebung = 0 verschiebung = [0,0] # Bilder aus meinSpiel werden für pygame vorbereitet -ebene0 = MeinSpiel(FelderX, FelderY) -for fname in ebene0.ebene0bilder: +meinspiel = MeinSpiel(FelderX, FelderY) +for fname in meinspiel.ebene0bilder: pyGameBilderebene0.append(pygame.image.load(fname)) -ebene1 = MeinSpiel(FelderX, FelderY) -for fname in ebene1.ebene1bilder: +for fname in meinspiel.ebene1bilder: pyGameBilderebene1.append(pygame.image.load(fname)) +for fname in meinspiel.ebene2bilder: + pyGameBilderebene2.append(pygame.image.load(fname)) #Anfangskonfiguration für das Spielfeld wird geladen -ebene0.anfangsKonfiguration() +meinspiel.anfangsKonfiguration() # Definieren und Öffnen eines neuen Fensters fenster = pygame.display.set_mode((Breite, Hoehe)) @@ -38,27 +40,36 @@ clock = pygame.time.Clock() # Schleife Hauptprogramm while True: - sound.hintergrundmusik(sound) + if meinspiel.game_over == False: + sound.hintergrundmusik(sound) + else: + pass verschiebung=[0,0] # Ü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) or ebene0.game_over == True: + if event.type==QUIT or (event.type==KEYDOWN and event.key==K_ESCAPE): pygame.quit() - if event.type==KEYDOWN: - verschiebung = ebene0.bewegen(event.key-1073741902,xverschiebung,yverschiebung) + if event.type==KEYDOWN and meinspiel.game_over == False: + verschiebung = meinspiel.bewegen(event.key-1073741902,xverschiebung,yverschiebung) # Spielfeld löschen xverschiebung += verschiebung[0] yverschiebung += verschiebung[1] for x in range(FelderX): for y in range(FelderY): - fenster.blit(pyGameBilderebene0[ebene0.ebene0feld[x][y]],((x+xverschiebung)*Pixel,(y+yverschiebung)*Pixel)) + fenster.blit(pyGameBilderebene0[meinspiel.ebene0feld[x][y]],((x+xverschiebung)*Pixel,(y+yverschiebung)*Pixel)) for x in range(FelderX): for y in range(FelderY): - fenster.blit(pyGameBilderebene1[ebene1.ebene1feld[x][y]],((x+xverschiebung)*Pixel,(y+yverschiebung)*Pixel)) + fenster.blit(pyGameBilderebene1[meinspiel.ebene1feld[x][y]],((x+xverschiebung)*Pixel,(y+yverschiebung)*Pixel)) + for x in range(FelderX): + for y in range(FelderY): + fenster.blit(pyGameBilderebene2[meinspiel.ebene2feld[x][y]],((x+xverschiebung)*Pixel,(y+yverschiebung)*Pixel)) # Spielfeld/figuren zeichnen - ebene0.spawnSpieler() + if meinspiel.game_over == False: + meinspiel.Monster() + meinspiel.Angriffe() + print(meinspiel.monsterstruktur) # Fenster aktualisieren pygame.display.flip() clock.tick(FPS) \ No newline at end of file