Fix Pawnmassacre
authorBenjamin Auder <benjamin.auder@somewhere>
Thu, 11 Jun 2020 19:52:14 +0000 (21:52 +0200)
committerBenjamin Auder <benjamin.auder@somewhere>
Thu, 11 Jun 2020 19:52:14 +0000 (21:52 +0200)
TODO
client/src/variants/Pawnmassacre.js

diff --git a/TODO b/TODO
index 9a8c2e3..9f46a8e 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,3 +1,5 @@
+r5k1/1R5p/3N4/4pP2/1p4P1/2p5/1rP1PKP1/8 w - - 0 1
+
 Simultaneous games: view Game + Simultaneous, using component (One)Game
 Storage: just key ID => IDs of actual games (in indexedDB)
 In Hall challenge: acceptation on sender side (who launch the game when ready --> left click [which just delete if nobody registered, with confirm box])
 Simultaneous games: view Game + Simultaneous, using component (One)Game
 Storage: just key ID => IDs of actual games (in indexedDB)
 In Hall challenge: acceptation on sender side (who launch the game when ready --> left click [which just delete if nobody registered, with confirm box])
index 563fd00..45756bc 100644 (file)
@@ -6,13 +6,18 @@ export class PawnmassacreRules extends ChessRules {
   }
 
   static GenRandInitFen(randomness) {
   }
 
   static GenRandInitFen(randomness) {
-    return (
-      ChessRules.GenRandIntFen(randomness)
+    const bFen =
+      ChessRules.GenRandInitFen(randomness)
       // Remove castle flags
       // Remove castle flags
-      .slice(0, -6).concat("-")
+      .slice(0, -6).concat("-");
+    const splitIdx = bFen.indexOf(' ');
+    return (
+      bFen.substr(0, splitIdx)
       .replace("PPPPPPPP", "pppppppp")
       // Next replacement is OK because only acts on first occurrence
       .replace("pppppppp", "PPPPPPPP")
       .replace("PPPPPPPP", "pppppppp")
       // Next replacement is OK because only acts on first occurrence
       .replace("pppppppp", "PPPPPPPP")
+      .split("").reverse().join("")
+      .concat(bFen.substr(splitIdx))
     );
   }
 };
     );
   }
 };