- for (i = 0; i < board_size; i++) {
- printf(" %2d", board_size - i);
- last_pos_was_move = 0;
- for (j = 0; j < board_size; j++) {
- if (POS(i, j) == last_move)
- pos_is_move = 128;
- else
- pos_is_move = 0;
- dead = (dragon_status(POS(i, j)) == DEAD) && showdead;
- switch (BOARD(i, j) + pos_is_move + last_pos_was_move) {
- case EMPTY+128:
- case EMPTY:
- printf(" %c", hspots[i][j]);
- last_pos_was_move = 0;
- break;
- case BLACK:
- printf(" %c", dead ? 'x' : 'X');
- last_pos_was_move = 0;
- break;
- case WHITE:
- printf(" %c", dead ? 'o' : 'O');
- last_pos_was_move = 0;
- break;
- case BLACK+128:
- printf("(%c)", 'X');
- last_pos_was_move = 256;
- break;
- case WHITE+128:
- printf("(%c)", 'O');
- last_pos_was_move = 256;
- break;
- case EMPTY+256:
- printf("%c", hspots[i][j]);
- last_pos_was_move = 0;
- break;
- case BLACK+256:
- printf("%c", dead ? 'x' : 'X');
- last_pos_was_move = 0;
- break;
- case WHITE+256:
- printf("%c", dead ? 'o' : 'O');
- last_pos_was_move = 0;
- break;
- default:
- fprintf(stderr, "Illegal board value %d\n", (int) BOARD(i, j));
- exit(EXIT_FAILURE);
- break;
- }
- }
+ for (i = 0; i < board_size; i++) {
+ printf(" %2d", board_size - i);
+ last_pos_was_move = 0;
+ for (j = 0; j < board_size; j++) {
+ if (POS(i, j) == last_move) pos_is_move = 128;
+ else pos_is_move = 0;
+ dead = (dragon_status(POS(i, j)) == DEAD) && showdead;
+ switch (BOARD(i, j) + pos_is_move + last_pos_was_move) {
+ case EMPTY+128:
+ case EMPTY:
+ if (i % 2 == 0) {
+ if (j % 2 == 0) {
+ printf(BACK1COLOR " " RESETCOLOR);
+ } else {
+ printf(BACK2COLOR " " RESETCOLOR);
+ }
+ } else {
+ if (j % 2 == 0) {
+ printf(BACK2COLOR " " RESETCOLOR);
+ } else {
+ printf(BACK1COLOR " " RESETCOLOR);
+ }
+ }
+ last_pos_was_move = 0;
+ break;
+ case BLACK:
+ printf(BLACKCOLOR " " RESETCOLOR);
+ last_pos_was_move = 0;
+ break;
+ case WHITE:
+ printf(WHITECOLOR " " RESETCOLOR);
+ last_pos_was_move = 0;
+ break;
+ case BLACK+128:
+ printf(BLACKCOLOR "()" RESETCOLOR);
+ last_pos_was_move = 256;
+ break;
+ case WHITE+128:
+ printf(WHITECOLOR "()" RESETCOLOR);
+ last_pos_was_move = 256;
+ break;
+ case EMPTY+256:
+ if (i % 2 == 0) {
+ if (j % 2 == 0) {
+ printf(BACK1COLOR " " RESETCOLOR);
+ } else {
+ printf(BACK2COLOR " " RESETCOLOR);
+ }
+ } else {
+ if (j % 2 == 0) {
+ printf(BACK2COLOR " " RESETCOLOR);
+ } else {
+ printf(BACK1COLOR " " RESETCOLOR);
+ }
+ }
+ last_pos_was_move = 0;
+ break;
+ case BLACK+256:
+ printf(BLACKCOLOR " " RESETCOLOR);
+ last_pos_was_move = 0;
+ break;
+ case WHITE+256:
+ printf(WHITECOLOR " " RESETCOLOR);
+ last_pos_was_move = 0;
+ break;
+ default:
+ fprintf(stderr, "Illegal board value %d\n", (int) BOARD(i, j));
+ exit(EXIT_FAILURE);
+ break;
+ }
+ }