summaryrefslogtreecommitdiffstats
path: root/src/ball.c
diff options
context:
space:
mode:
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