summaryrefslogtreecommitdiffstats
path: root/src/player.c
diff options
context:
space:
mode:
authorP. J. McDermott <pjm@nac.net>2013-05-23 12:33:59 (EDT)
committer P. J. McDermott <pjm@nac.net>2013-05-23 12:33:59 (EDT)
commit7914bae789029ca775ebb182831746e1d60dedc3 (patch)
tree394f6f82cce0763e01ec13c92f311fec9620882b /src/player.c
parenta4d2b83d29a78d171deb2c6447369d94e752f2cb (diff)
downloadcursespong-7914bae789029ca775ebb182831746e1d60dedc3.zip
cursespong-7914bae789029ca775ebb182831746e1d60dedc3.tar.gz
cursespong-7914bae789029ca775ebb182831746e1d60dedc3.tar.bz2
Generalize paddle struct and code.
Diffstat (limited to 'src/player.c')
-rw-r--r--src/player.c38
1 files changed, 25 insertions, 13 deletions
diff --git a/src/player.c b/src/player.c
index 09b1596..8e9f07c 100644
--- a/src/player.c
+++ b/src/player.c
@@ -15,23 +15,35 @@ new_player(int id)
}
p->score = 0;
- p->paddle_h.pos = PADDLE_H_POS_START;
- p->paddle_v.pos = PADDLE_V_POS_START;
- p->paddle_h.size = PADDLE_H_SIZE_NORMAL;
- p->paddle_v.size = PADDLE_V_SIZE_NORMAL;
+
+ p->paddle_h.x = PADDLE_H_POS_START;
+ p->paddle_v.y = PADDLE_V_POS_START;
+ if (id == 0) {
+ p->paddle_h.y = BOARD_HEIGHT - 2;
+ p->paddle_v.x = 2;
+ } else {
+ p->paddle_h.y = 1;
+ p->paddle_v.x = BOARD_WIDTH - 2;
+ }
+ p->paddle_h.width = PADDLE_H_SIZE_NORMAL;
+ p->paddle_h.height = 1;
+ p->paddle_v.height = PADDLE_V_SIZE_NORMAL;
+ p->paddle_v.width = 1;
+
+ p->paddle_h.pos = &p->paddle_h.x;
+ p->paddle_v.pos = &p->paddle_v.y;
+ p->paddle_h.size = &p->paddle_h.width;
+ p->paddle_v.size = &p->paddle_v.height;
+
p->paddle_h.speed = PADDLE_H_SPEED_NORMAL;
p->paddle_v.speed = PADDLE_V_SPEED_NORMAL;
p->paddle_h.dir = 0;
p->paddle_v.dir = 0;
- p->paddle_h.type = PADDLE_TYPE_H;
- p->paddle_v.type = PADDLE_TYPE_V;
- if (id == 0) {
- p->paddle_h.track = BOARD_HEIGHT - 2;
- p->paddle_v.track = 2;
- } else {
- p->paddle_h.track = 1;
- p->paddle_v.track = BOARD_WIDTH - 2;
- }
+
+ p->paddle_h.min_pos = 3;
+ p->paddle_h.max_pos = BOARD_WIDTH - 2;
+ p->paddle_v.min_pos = 2;
+ p->paddle_v.max_pos = BOARD_HEIGHT - 2;
return p;
}