summaryrefslogtreecommitdiffstats
path: root/src/ball.c
diff options
context:
space:
mode:
authorP. J. McDermott <pjm@nac.net>2013-05-21 18:57:11 (EDT)
committer P. J. McDermott <pjm@nac.net>2013-05-21 18:57:11 (EDT)
commita4d2b83d29a78d171deb2c6447369d94e752f2cb (patch)
treec92db91f7d00ec33fe8cab03462cdf5b7d0cf78b /src/ball.c
parent40a64ca7bf3fcae470f3af16f21597e80e23fbe3 (diff)
downloadcursespong-a4d2b83d29a78d171deb2c6447369d94e752f2cb.zip
cursespong-a4d2b83d29a78d171deb2c6447369d94e752f2cb.tar.gz
cursespong-a4d2b83d29a78d171deb2c6447369d94e752f2cb.tar.bz2
Make balls move.
Diffstat (limited to 'src/ball.c')
-rw-r--r--src/ball.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/ball.c b/src/ball.c
index 91c2995..3515b68 100644
--- a/src/ball.c
+++ b/src/ball.c
@@ -1,10 +1,11 @@
#include <stdlib.h>
+#include <math.h>
#include <curses.h>
#include "ball.h"
struct ball *
-new_ball(float x, float y)
+new_ball(float x, float y, float speed, float dir)
{
struct ball *b;
@@ -15,6 +16,8 @@ new_ball(float x, float y)
b->x = x;
b->y = y;
+ b->speed = speed;
+ b->dir = dir;
return b;
}
@@ -34,7 +37,8 @@ clear_ball(struct ball *b)
void
update_ball(struct ball *b)
{
- ++b;
+ b->x += cosf(b->dir) * b->speed;
+ b->y += sinf(b->dir) * b->speed;
}
void