INNER CODE UNIT · Python
ball_collision
metafy-social/python-scripts · scripts/Brick-Breaker-Python/main.py:111
def ball_collision(ball):
if ball.x - BALL_RADIUS <= 0 or ball.x + BALL_RADIUS >= WIDTH:
ball.set_vel(ball.x_vel * -1, ball.y_vel)
if ball.y + BALL_RADIUS >= HEIGHT or ball.y - BALL_RADIUS <= 0:
ball.set_vel(ball.x_vel, ball.y_vel * -1)
def ball_paddle_collision(ball, paddle):
if not (ball.x <= paddle.x + paddle.width and ball.x >= paddle.x):
return
if not (ball.y + ball.radius >= paddle.y):
return
paddle_center = paddle.x + paddle.width/2
distance_to_center = ball.x - paddle_center
percent_width = distance_to_center / paddle.width
angle = percent_width * 90