#include #include "paddle.h" void update_paddle(struct paddle *pad) { int max; pad->pos += pad->speed * pad->dir; if (pad->type == PADDLE_TYPE_H) { max = 78; } else { max = 23; } if (pad->pos < pad->size / 2 + 2) pad->pos = pad->size / 2 + 2; if (pad->pos > max - pad->size / 2) pad->pos = max - pad->size / 2; } void draw_paddle(struct paddle *pad) { int off; int pos; off = pad->pos; off -= pad->size / 2; if (pad->type == PADDLE_TYPE_H) { for (pos = 0; pos < 79; ++pos) { mvprintw(pad->track, pos, " "); } for (pos = 0; pos < pad->size; ++pos) { attr_on(WA_REVERSE, NULL); mvprintw(pad->track, off + pos, " "); attr_off(WA_REVERSE, NULL); } } else { for (pos = 0; pos < 24; ++pos) { mvprintw(pos, pad->track, " "); } for (pos = 0; pos < pad->size; ++pos) { attr_on(WA_REVERSE, NULL); mvprintw(off + pos, pad->track, " "); attr_off(WA_REVERSE, NULL); } } }