diff options
Diffstat (limited to 'src/game.c')
-rw-r--r-- | src/game.c | 30 |
1 files changed, 5 insertions, 25 deletions
@@ -4,6 +4,7 @@ #include "game.h" #include "player.h" +#include "paddle.h" static void draw_paddles(struct game *g); static void wait(struct game *g); @@ -83,31 +84,10 @@ input(struct game *g) static void update(struct game *g) { - struct paddle *pad; - - /* Player 1 horizontal paddle */ - pad = &g->players[0]->paddle_h; - pad->pos += pad->speed * pad->dir; - if (pad->pos < pad->size / 2 + 2) pad->pos = pad->size / 2 + 2; - if (pad->pos > 78 - pad->size / 2) pad->pos = 78 - pad->size / 2; - - /* Player 1 vertical paddle */ - pad = &g->players[0]->paddle_v; - pad->pos += pad->speed * pad->dir; - if (pad->pos < pad->size / 2 + 2) pad->pos = pad->size / 2 + 2; - if (pad->pos > 23 - pad->size / 2) pad->pos = 23 - pad->size / 2; - - /* Player 2 horizontal paddle */ - pad = &g->players[1]->paddle_h; - pad->pos += pad->speed * pad->dir; - if (pad->pos < pad->size / 2 + 2) pad->pos = pad->size / 2 + 2; - if (pad->pos > 78 - pad->size / 2) pad->pos = 78 - pad->size / 2; - - /* Player 2 vertical paddle */ - pad = &g->players[1]->paddle_v; - pad->pos += pad->speed * pad->dir; - if (pad->pos < pad->size / 2 + 2) pad->pos = pad->size / 2 + 2; - if (pad->pos > 23 - pad->size / 2) pad->pos = 23 - pad->size / 2; + update_paddle(&g->players[0]->paddle_h); + update_paddle(&g->players[0]->paddle_v); + update_paddle(&g->players[1]->paddle_h); + update_paddle(&g->players[1]->paddle_v); } static void |