From 9f327207ca5e7c074ceb42efbeb1e62651a66336 Mon Sep 17 00:00:00 2001 From: Armaan Bhojwani Date: Sat, 15 May 2021 22:21:41 -0400 Subject: [PATCH] Improve paddle bounce logic --- pong.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pong.c b/pong.c index a61bc0d..0a75050 100644 --- a/pong.c +++ b/pong.c @@ -142,9 +142,9 @@ main(void) { /* Find the distance that the ball hits from the center of the padel and accordingly adjust ball path */ int poff = (x <= 1) ? aoff : boff; - double fromc = fabs(0.5 * (poff + 0.5 * pad_h - y)); - slope_x *= (slope_x < 20) ? 1 : (int) ((double) slope_x / fromc); - slope_x += 1; + double fromc = (fabs(poff + 0.5 * pad_h - y) / 2); + slope_x /= (abs(slope_x) > 25) ? 2 : fromc; + slope_x = (slope_x < 2) ? 2 : slope_x; direction *= -1; x += direction; -- 2.39.2