diff options
author | P. J. McDermott <pj@pehjota.net> | 2021-03-26 22:53:47 (EDT) |
---|---|---|
committer | P. J. McDermott <pj@pehjota.net> | 2021-03-26 22:53:47 (EDT) |
commit | b5bc4b9fdfd72a3f35b78c138836b963b0883d06 (patch) | |
tree | 9886301ea2770eeb2e400a043ee1a7b72f07d9d9 /src/ball.c | |
parent | 17982c5f7b2cfa9b55bc2462ff815b3cb33460dc (diff) | |
download | dodge-balls-b5bc4b9fdfd72a3f35b78c138836b963b0883d06.zip dodge-balls-b5bc4b9fdfd72a3f35b78c138836b963b0883d06.tar.gz dodge-balls-b5bc4b9fdfd72a3f35b78c138836b963b0883d06.tar.bz2 |
ball: Move spinning balls
Diffstat (limited to 'src/ball.c')
-rw-r--r-- | src/ball.c | 17 |
1 files changed, 17 insertions, 0 deletions
@@ -77,6 +77,23 @@ db_ball_new(int x, int y, int r, int a, int d, int sr, double s, } void +db_balls_move(struct db_ball *ball) +{ + if (ball->sr == 0) { + } else { + ball->a += ball->d * ball->s; + 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)", + ball->a, ball->s, ball->d); + } + + if (ball->next != NULL) { + db_balls_move(ball->next); + } +} + +void db_balls_collisions(struct db_ball *ball) { struct db_ball *other; |