From 4a539a2210b90f4580adb46f9f8df7da2a391c29 Mon Sep 17 00:00:00 2001 From: P. J. McDermott Date: Sat, 27 Mar 2021 17:50:14 -0400 Subject: ball: Keep angle in [0, 360) --- diff --git a/src/ball.c b/src/ball.c index 767b565..14ee8de 100644 --- a/src/ball.c +++ b/src/ball.c @@ -87,7 +87,7 @@ db_balls_move(struct db_ball *ball) ball->x += cos(ball->a * (M_PI / 180)); ball->y += sin(ball->a * (M_PI / 180)); } else { - ball->a += ball->d * ball->s; + ball->a = fmod(ball->a + ball->d * ball->s, 360); ball->x = ball->cx + cos(ball->a * (M_PI / 180)) * ball->sr; ball->y = ball->cy + sin(ball->a * (M_PI / 180)) * ball->sr; db_dbg("Spinning ball angle %f (speed %f, direction %d)", -- cgit v0.9.1