# Pong # A 2 player local game with an optional Ai controller # Created by: William @SA import turtle wn = turtle.Screen() wn.title("Pong by Grade 8 and 9") wn.bgcolor("black") wn.setup(width=800, height=600) wn.tracer(0) # Score score_a = 0 score_b = 0 # Start with AI off switch = -1 # Paddle A paddle_a = turtle.Turtle() paddle_a.speed(0) # sets the speed to maximum paddle_a.shape("square") paddle_a.color("white") paddle_a.shapesize(stretch_wid=5, stretch_len=1) paddle_a.penup() paddle_a.goto(-350, 0) paddle_a.dy = 0 # Paddle B paddle_b = turtle.Turtle() paddle_b.speed(0) paddle_b.shape("square") paddle_b.color("white") paddle_b.shapesize(stretch_wid=5, stretch_len=1) paddle_b.penup() paddle_b.goto(350, 0) paddle_b.dy = 0 # Functions def paddle_a_up(): paddle_a.dy = 0.3 def paddle_a_down(): paddle_a.dy = -0.3 def paddle_a_stop(): paddle_a.dy = 0 def paddle_b_up(): paddle_b.dy = 0.3 def paddle_b_down(): paddle_b.dy = -0.3 def paddle_b_stop(): paddle_b.dy = 0 # Keyboard input wn.listen() wn.onkeypress(paddle_a_up, "w") wn.onkeypress(paddle_a_down, "s") wn.onkeypress(paddle_b_up, "Up") wn.onkeypress(paddle_b_down, "Down") wn.onkeyrelease(paddle_a_stop, "w") wn.onkeyrelease(paddle_a_stop, "s") wn.onkeyrelease(paddle_b_stop, "Up") wn.onkeyrelease(paddle_b_stop, "Down") # Main game loop while True: wn.update() # Move the paddles paddle_a.sety(paddle_a.ycor() + paddle_a.dy) paddle_b.sety(paddle_b.ycor() + paddle_b.dy) if paddle_a.ycor() > 290: paddle_a.sety(290) if paddle_a.ycor() < -290: paddle_a.sety(-290) if paddle_b.ycor() > 290: paddle_b.sety(290) if paddle_b.ycor() < -290: paddle_b.sety(-290)