Fix Werewolf move
authorH.G.Muller <hgm@hgm-xboard.(none)>
Thu, 2 Apr 2015 07:56:55 +0000 (09:56 +0200)
committerH.G.Muller <hgm@hgm-xboard.(none)>
Thu, 2 Apr 2015 07:56:55 +0000 (09:56 +0200)
hachu.c

diff --git a/hachu.c b/hachu.c
index 0f612f4..0e931b5 100644 (file)
--- a/hachu.c
+++ b/hachu.c
@@ -1685,7 +1685,7 @@ GenCapts (int sqr, int victimValue)
     for(i=0; i<8; i++) {    // scan all knight jumps to locate source\r
       int x = sqr - nStep[i], attacker = board[x];\r
       if(attacker == EMPTY || (attacker & TYPE) != stm) continue;\r
-      if(p[attacker].range[i] <= L && p[attacker].range[i] >= S || p[attacker].range[i] == N) { // has Knight jump in our direction\r
+      if(p[attacker].range[i] == L || p[attacker].range[i] < W && p[attacker].range[i] >= S || p[attacker].range[i] == N) { // has Knight jump in our direction\r
        NewCapture(x, sqr + victimValue, p[attacker].promoFlag);   // plain jump (as in N)\r
        if(p[attacker].range[i] < N) { // Lion power; generate double captures over two possible intermediates\r
          int v = kStep[i]; // leftish path\r