Create main.py
Browse files
main.py
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from turtle import Screen
|
| 2 |
+
from net import make_net
|
| 3 |
+
from paddle import Paddle
|
| 4 |
+
from ball import Ball
|
| 5 |
+
from scoreboard import Scoreboard
|
| 6 |
+
import time
|
| 7 |
+
|
| 8 |
+
|
| 9 |
+
SCREEN_WIDTH = 800
|
| 10 |
+
SCREEN_HEIGHT = 600
|
| 11 |
+
SCREEN_COLOR = "black"
|
| 12 |
+
COORDINATES = [(350, 0), (-350, 0)]
|
| 13 |
+
SPEED = 0.09
|
| 14 |
+
|
| 15 |
+
screen = Screen()
|
| 16 |
+
screen.setup(width=SCREEN_WIDTH, height=SCREEN_HEIGHT)
|
| 17 |
+
screen.title("That's right, PONG!!! (with SUPER SHOT)")
|
| 18 |
+
screen.bgcolor(SCREEN_COLOR)
|
| 19 |
+
screen.tracer(0)
|
| 20 |
+
make_net()
|
| 21 |
+
|
| 22 |
+
paddle_1 = Paddle(coordinates=COORDINATES[0])
|
| 23 |
+
paddle_2 = Paddle(coordinates=COORDINATES[1])
|
| 24 |
+
ball = Ball()
|
| 25 |
+
score = Scoreboard()
|
| 26 |
+
|
| 27 |
+
screen.listen()
|
| 28 |
+
screen.onkey(paddle_1.up, "Up")
|
| 29 |
+
screen.onkey(paddle_1.down, "Down")
|
| 30 |
+
|
| 31 |
+
screen.onkey(paddle_2.up, "w")
|
| 32 |
+
screen.onkey(paddle_2.down, "s")
|
| 33 |
+
|
| 34 |
+
game_is_on = True
|
| 35 |
+
|
| 36 |
+
while game_is_on:
|
| 37 |
+
screen.update()
|
| 38 |
+
time.sleep(SPEED)
|
| 39 |
+
ball.move()
|
| 40 |
+
|
| 41 |
+
if ball.ycor() > 280 or ball.ycor() < -280:
|
| 42 |
+
ball.bounce_y()
|
| 43 |
+
|
| 44 |
+
if paddle_1.distance(ball) < 50 and ball.xcor() > 320 or paddle_2.distance(ball) < 50 and ball.xcor() < -320:
|
| 45 |
+
ball.bounce_x()
|
| 46 |
+
if SPEED >= .01:
|
| 47 |
+
SPEED -= .009
|
| 48 |
+
|
| 49 |
+
if ball.xcor() > 400:
|
| 50 |
+
score.add_point_p2()
|
| 51 |
+
ball.reset()
|
| 52 |
+
SPEED = .09
|
| 53 |
+
|
| 54 |
+
if ball.xcor() < -400:
|
| 55 |
+
score.add_point_p1()
|
| 56 |
+
ball.reset()
|
| 57 |
+
SPEED = .09
|
| 58 |
+
|
| 59 |
+
if score.score_p1 == 5 or score.score_p2 == 5:
|
| 60 |
+
score.end_game()
|
| 61 |
+
game_is_on = False
|
| 62 |
+
|
| 63 |
+
|
| 64 |
+
|
| 65 |
+
screen.exitonclick()
|