Fix ASEAN Chess
[fairymax.git] / fairymax.c
index 418c926..007e542 100644 (file)
@@ -503,7 +503,7 @@ void LoadGame(char *name)
         /* We have found variant, or if none specified, are at beginning of file */\r
         if(fscanf(f, "%dx%d", &BW, &BH)!=2 || BW>12 || BH!=8)\r
         { printf("telluser unsupported board size %dx%d\n",BW,BH); exit(0); }\r
-        makruk = 0; if(fscanf(f, "=%d", &i)) makruk=64; // new method to indicate deviant zone depth (for now assumes 3)\r
+        makruk = 0; if(fscanf(f, "=%d", &i)) makruk=67-i; // new method to indicate deviant zone depth (for now assumes 3)\r
 \r
         for(i=0; i<BW; i++) fscanf(f, "%d", oo+i);\r
         for(i=0; i<BW; i++) fscanf(f, "%d", oo+i+16);\r
@@ -539,6 +539,7 @@ void LoadGame(char *name)
         }\r
        while(fscanf(f, " # %[^\n]", pieceToChar)) printf("piece %s\n", pieceToChar);\r
         fclose(f);\r
+       if(makruk != 64) makruk = 0; // 66 was kludge to interpret "=1" suffix in asean for setting up 3rd-rank Pawns\r
 }\r
 \r
 int main(int argc, char **argv)\r