int
main(void) {
srand((unsigned int)time(NULL));
- int aoff = 0, boff = 0;
- int max_y, max_x;
- int max_y_new = 0, max_x_new = 0;
- int pad_h = 5;
+ int max_y, max_x, max_y_new, max_x_new;
int a_score = 0, b_score = 0;
int slope_x = randslope();
int index_dir = randsign();
--max_y;
int y = max_y/2;
int x = max_x/2;
+ int pad_h = 0.2 * max_y;
+ int aoff = max_y / 2 - pad_h;
+ int boff = max_y / 2 - pad_h;
gettimeofday(&start, NULL);
while(1) {
if (key == 'q') {
die(0);
} else if (key == 'k') {
- if (boff < max_y - pad_h) boff += 1;
+ if (boff < max_y - pad_h) boff += 2;
} else if (key == 'i') {
- if (boff > 0) boff -= 1;
+ if (boff > 0) boff -= 2;
} else if (key == 's') {
- if (aoff < max_y - pad_h) aoff += 1;
+ if (aoff < max_y - pad_h) aoff += 2;
} else if (key == 'w') {
- if (aoff > 0) aoff -= 1;
+ if (aoff > 0) aoff -= 2;
} else if (key == 27) {
while(1) {
key = getch();
speed *= 0.9;
} else if (x >= max_x - 1 || x <= 1) {
// Ball goes out of bounds
- if (x <=1) {
+ if (x <= 1) {
b_score += 1;
+ mvprintw(0, 0, "PLAYER B SCORES");
} else {
a_score += 1;
+ mvprintw(0, 0, "PLAYER A SCORES");
}
+ refresh();
+
+ // Reset to default values
x = max_x/2;
+ y = max_y / 2;
slope_x = randslope();
index_dir = randsign();
speed = randspeed();
+ aoff = max_y / 2 - pad_h;
+ boff = max_y / 2 - pad_h;
+
sleep(1);
+ clear();
} else if (y == 0 || y == max_y) {
// Ball hits top or bottom wall
index_dir *= -1;