From: Benjamin Auder <benjamin.auder@somewhere>
Date: Thu, 11 Jun 2020 19:52:14 +0000 (+0200)
Subject: Fix Pawnmassacre
X-Git-Url: https://git.auder.net/img/css/%7B%7B%20path%28%27fos_user_registration_register%27%29%20%7D%7D?a=commitdiff_plain;h=cfa37af093bf8b8311b8fff5f79697308dc2bc07;p=vchess.git

Fix Pawnmassacre
---

diff --git a/TODO b/TODO
index 9a8c2e3a..9f46a8ea 100644
--- 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])
diff --git a/client/src/variants/Pawnmassacre.js b/client/src/variants/Pawnmassacre.js
index 563fd00b..45756bce 100644
--- a/client/src/variants/Pawnmassacre.js
+++ b/client/src/variants/Pawnmassacre.js
@@ -6,13 +6,18 @@ export class PawnmassacreRules extends ChessRules {
   }
 
   static GenRandInitFen(randomness) {
-    return (
-      ChessRules.GenRandIntFen(randomness)
+    const bFen =
+      ChessRules.GenRandInitFen(randomness)
       // 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")
+      .split("").reverse().join("")
+      .concat(bFen.substr(splitIdx))
     );
   }
 };