From 17b37f5bb462c29e2b8c94068c4b54e1af39b2b7 Mon Sep 17 00:00:00 2001 From: P. J. McDermott Date: Mon, 20 May 2013 15:20:37 -0400 Subject: Draw the paddles on the screen. --- diff --git a/src/game.c b/src/game.c index f591781..c6edaf5 100644 --- a/src/game.c +++ b/src/game.c @@ -1,8 +1,11 @@ #include +#include #include "game.h" #include "player.h" +static void draw_paddles(struct game *g); + struct game * new_game(void) { @@ -27,3 +30,52 @@ free_game(struct game *g) free(g); } + +void +draw_game(struct game *g) +{ + draw_paddles(g); +} + +static void +draw_paddles(struct game *g) +{ + int off; + int pos; + + /* Player 1 horizontal paddle */ + off = g->players[0]->paddle_h.pos; + off -= g->players[0]->paddle_h.size / 2; + for (pos = 0; pos < g->players[0]->paddle_h.size; ++pos) { + attr_on(WA_REVERSE, NULL); + mvprintw(23, off + pos, " "); + attr_off(WA_REVERSE, NULL); + } + + /* Player 1 vertical paddle */ + off = g->players[0]->paddle_v.pos; + off -= g->players[0]->paddle_v.size / 2; + for (pos = 0; pos < g->players[0]->paddle_v.size; ++pos) { + attr_on(WA_REVERSE, NULL); + mvprintw(off + pos, 1, " "); + attr_off(WA_REVERSE, NULL); + } + + /* Player 2 horizontal paddle */ + off = g->players[1]->paddle_h.pos; + off -= g->players[1]->paddle_h.size / 2; + for (pos = 0; pos < g->players[1]->paddle_h.size; ++pos) { + attr_on(WA_REVERSE, NULL); + mvprintw(1, off + pos, " "); + attr_off(WA_REVERSE, NULL); + } + + /* Player 2 vertical paddle */ + off = g->players[1]->paddle_v.pos; + off -= g->players[1]->paddle_v.size / 2; + for (pos = 0; pos < g->players[1]->paddle_v.size; ++pos) { + attr_on(WA_REVERSE, NULL); + mvprintw(off + pos, 78, " "); + attr_off(WA_REVERSE, NULL); + } +} diff --git a/src/game.h b/src/game.h index abd5638..f404ff0 100644 --- a/src/game.h +++ b/src/game.h @@ -9,5 +9,6 @@ struct game { struct game *new_game(void); void free_game(struct game *g); +void draw_game(struct game *g); #endif diff --git a/src/main.c b/src/main.c index 67cdb02..10cdf35 100644 --- a/src/main.c +++ b/src/main.c @@ -13,6 +13,9 @@ main(void) init_curses(); g = new_game(); + draw_game(g); + getch(); + free_game(g); fini_curses(); -- cgit v0.9.1