Make King immune
[hachu.git] / hachu.c
diff --git a/hachu.c b/hachu.c
index 0f612f4..616b656 100644 (file)
--- a/hachu.c
+++ b/hachu.c
@@ -467,7 +467,7 @@ PieceDesc wolfPieces[] = {
   {"R", "",  500, { X,0,X,0,X,0,X,0 }, 3 },\r
   {"B", "",  320, { 0,X,0,X,0,X,0,X }, 1 },\r
   {"N", "",  300, { N,N,N,N,N,N,N,N }, 1 },\r
-  {"K", "",  280, { 1,1,1,1,1,1,1,1 } },\r
+  {"K", "",  280, { 1,1,1,1,1,1,1,1 }, 0, 4 },\r
   {"P", "R",  80, { M,C,0,0,0,0,0,C } },\r
   { NULL }  // sentinel\r
 };\r
@@ -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