startBild.py 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. # (c) Hochschule Anhalt, veröffentlicht unter MIT-Lizenz
  2. # Hauptprogramm
  3. # Autor: Viktor Lysow, Johannes Tümler
  4. # Letzte Änderung: 14.03.2024
  5. # Zweck: Das ist sozusagen Level 0 - der Startbildschirm
  6. # Der Nachfolgende Codeblock "BLOCK1" sorgt dafür, dass man aus jeder Datei heraus das Hauptprogramm starten kann.
  7. # Dadurch kann man in jeder Datei auf "play" drücken und es wird automatisch main.py gestartet.
  8. if __name__=="__main__":
  9. import subprocess
  10. # Auf Linux oder Mac aktivieren Sie die folgende Zeile und deaktivieren Sie die Zeile danach:
  11. #subprocess.call("python3 main.py", shell=True) # die richtige Main-Datei aufrufen (unser eigentliches Hauptprogramm)
  12. subprocess.call("main.py", shell=True) # die richtige Main-Datei aufrufen (unser eigentliches Hauptprogramm)
  13. exit(0) # nun das Programm hier beenden .. wir wollen ja nur das Hauptprogramm starten und nicht *diese* Datei.
  14. # Hinweis fürs Debugging: Das VSCode-Debugging funktioniert jedoch nur, wenn man das Debugging in der "main.py" beginnt! D.h. wer debuggen möchte, muss die main.py öffnen und dort Debug starten.
  15. # Ende "BLOCK1"
  16. import pygame
  17. from screen import screen
  18. from screen import myfont
  19. import button
  20. from hindernisse import feld
  21. from screen import font
  22. hintergrundstart1 = pygame.image.load("Bilder/Start/Start1.png")
  23. x_Mitte = 348
  24. y_NeuesSpiel = 250
  25. y_Ende = 400
  26. gruenDunkel = (0, 150, 0)
  27. gruenHell = (0, 255, 0)
  28. rotDunkel = (150, 0, 0)
  29. rotHell = (255, 0, 0)
  30. blauHell = (0, 0, 255)
  31. grau = (76, 76, 76)
  32. breite = 120
  33. hoehe = 60
  34. randDicke = 1
  35. def start(): #Startbildschrim
  36. screen.blit(hintergrundstart1, (0, 0))
  37. maus = pygame.mouse.get_pos()
  38. klick = pygame.mouse.get_pressed()
  39. # Buttons zum Starten / Beenden des Spiels
  40. neuesSpiel = button.button(x_Mitte, y_NeuesSpiel, "Neues Spiel", breite, hoehe, gruenDunkel, gruenHell, randDicke, maus, klick) #Neues Spiel hat einen Returnwert
  41. button.button(x_Mitte, y_Ende, "Ende", breite, hoehe, rotDunkel, rotHell, randDicke, maus, klick) #Ende hat keinen Returnwert
  42. # Buttons zur Auswahl der Spielpersonen
  43. wer1 = myfont.render("Choose your destiny", True, (128, 128, 128))
  44. screen.blit(wer1, (50, 30))
  45. button.bildButton(f"Bilder/Held/VornS.png", 40, 100, "Held", feld*2, feld*2, grau, blauHell, maus, klick)
  46. button.bildButton(f"Bilder/Heldin/VornS.png", 40, 100 + (feld + 5)*2, "Heldin", feld*2, feld*2, grau, blauHell, maus, klick)
  47. button.bildButton(f"Bilder/Boss/VornS.png", 40, 100 + (feld + 5)*4, "Boss", feld*2, feld*2, grau, blauHell, maus, klick)
  48. if neuesSpiel:
  49. del maus
  50. del klick
  51. return neuesSpiel