""" Basic Breakout Rory Solomon, solomonr@newschool.edu For Code Toolkit: Python Eugene Lang College, Fall 2020 If you lose, press SPACE to continue """ row1Bricks = [] row2Bricks = [] row3Bricks = [] def setup(): size(800, 600) global ballX, ballY, ballXDirection, ballYDirection global paddleX ballX = 400 ballY = 300 ballXDirection = 5 ballYDirection = -5 paddleX = 400 i = 0 while i < 40: row1Bricks.append(True) row2Bricks.append(True) row3Bricks.append(True) i = i + 1 def draw(): global ballX, ballY, ballXDirection, ballYDirection global paddleX background(25) # Draw bricks stroke(100) strokeWeight(1) rectMode(CORNER) i = 0 while i < 40: fill(255, 38, 0); if row1Bricks[i]: rect(i * 20, 50, 18, 10) fill(255, 141, 0); if row2Bricks[i]: rect(i * 20, 70, 18, 10) fill(255, 230, 0); if row3Bricks[i]: rect(i * 20, 90, 18, 10) i = i + 1 # Draw paddle fill(0, 244, 255) rectMode(CENTER) rect(paddleX, height - 50, 200, 10) if keyPressed: if keyCode == LEFT: paddleX = paddleX - 10 if keyCode == RIGHT: paddleX = paddleX + 10 # Draw ball fill(150) noStroke() ellipse(ballX, ballY, 10, 10) # Move ball ballX = ballX + ballXDirection ballY = ballY + ballYDirection # Check collion of ball and paddle if ballX > paddleX - 100 and ballX < paddleX + 100 / 2 and ballY > height - 55 and ballY < height - 45: ballYDirection = ballYDirection * -1 ballXDirection = random(-5, 5) # Check collision of ball with walls if ballX > width or ballX < 0: ballXDirection = ballXDirection * -1 if ballY < 0: ballYDirection = ballYDirection * -1 # Check brick collisions i = 0 while i < 40: if ballX > i * 20 and ballX < i * 20 + 20 and ballY > 50 and ballY < 60 and row1Bricks[i]: row1Brick[i] = False ballYDirection = ballYDirection * -1 if ballX > i*20 and ballX < i*20+20 and ballY > 70 and ballY < 80 and row2Bricks[i]: row2Bricks[i] = False ballYDirection = ballYDirection * -1 if ballX > i*20 and ballX < i*20+20 and ballY > 90 and ballY < 100 and row3Bricks[i]: row3Bricks[i] = False ballYDirection = ballYDirection * -1 i = i + 1 def keyPressed(): global ballX, ballY, ballYDirection print ("in here") if key == ' ': ballX = 400 ballY = 300 ballYDirection = -5