Ein GUI(Tkinter) basiertes Programm für ein einfaches Ping-Pong-Spiel. Die Steuerung des Paddles soll mittel der Tastatur erfolgen.

Ping-Pong ( Kopfprogramm ) 1.5KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. #Einfaches Ping-Pong Spiel basier auf GUI(Tkinter)
  2. #Authors : Milad Shirvani Filabadi, Kai Zhang,Yuan Wei
  3. #08.11.2017
  4. #Stufe 1 - Eigenschaften und Funktionen der Ball definieren
  5. #Stufe 2 - Eigenschaften und Funktionen der Paddle definieren
  6. #Stufe 3 - Fenster und canvas erstellen für zeichnen
  7. #Stufe 4 - Animation Schleife
  8. #Stufe 5 - Game Over
  9. from tkinter import *
  10. import random
  11. import time
  12. # Eigenschaften und Funktionen der Ball definieren
  13. class Ball:
  14. def __init__(self, canvas, color, size, paddle):
  15. self.canvas = canvas
  16. self.paddle = paddle
  17. self.id = canvas.create_oval(10, 10, size, size, fill=color)
  18. self.canvas.move(self.id, 245, 100)
  19. self.xspeed = random.randrange(-3,3)
  20. self.yspeed = -1
  21. self.hit_bottom = False
  22. self.score = 0
  23. def draw(self):
  24. self.canvas.move(self.id, self.xspeed, self.yspeed)
  25. pos = self.canvas.coords(self.id)
  26. if pos[1] <= 0:
  27. self.yspeed = 3
  28. if pos[3] >= 400:
  29. self.hit_bottom = True
  30. if pos[0] <= 0:
  31. self.xspeed = 3
  32. if pos[2] >= 500:
  33. self.xspeed = -3
  34. if self.hit_paddle(pos) == True:
  35. self.yspeed = -3
  36. self.xspeed = random.randrange(-3,3)
  37. self.score += 1
  38. def hit_paddle(self, pos):
  39. paddle_pos = self.canvas.coords(self.paddle.id)
  40. if pos[2] >= paddle_pos[0] and pos[0] <= paddle_pos[2]:
  41. if pos[3] >= paddle_pos[1] and pos[3] <= paddle_pos[3]:
  42. return True
  43. return False