Fix bug in setting up w3 and w4 games
authorH.G. Muller <h.g.muller@hccnet.nl>
Sun, 2 Sep 2012 16:24:33 +0000 (18:24 +0200)
committerH.G. Muller <h.g.muller@hccnet.nl>
Sun, 2 Sep 2012 16:24:33 +0000 (18:24 +0200)
The expression to generate a random NBRQ in fact generated a random NBRA,
because of altered piece encoding.

lasker-2.2.3/src/board.c

index f2fa5f0..eae3b48 100644 (file)
@@ -1361,7 +1361,7 @@ static void wild_update(board_t b, int style)
     place_piece(b, W_KING, ANY_SQUARE, 8);
     for (i = 0; i < 8; i++) {
       if (b[i][0] != W_KING) {
-       b[i][0] = (random() % 4) + 2;
+       b[i][0] = (random() % 4) + 2; if(b[i][0] == 5) b[i][0] += 3;
       }
     }
     /* Black mirrors White */
@@ -1374,7 +1374,7 @@ static void wild_update(board_t b, int style)
     place_piece(b, W_KING, ANY_SQUARE, 8);
     for (i = 0; i < 8; i++) {
       if (b[i][0] != W_KING) {
-       b[i][0] = (random() % 4) + 2;
+       b[i][0] = (random() % 4) + 2; if(b[i][0] == 5) b[i][0] += 3;
       }
     }
     /* Black has same set of pieces, but randomly permuted, except that Black