Almost added TitanChess + EvolutionChess
[vchess.git] / client / src / variants / Monochrome.js
index 919e770..22242ed 100644 (file)
@@ -1,6 +1,7 @@
 import { ChessRules } from "@/base_rules";
 
 export class MonochromeRules extends ChessRules {
+
   static get HasEnpassant() {
     // Pawns would be on the same side
     return false;
@@ -37,6 +38,10 @@ export class MonochromeRules extends ChessRules {
     return true;
   }
 
+  getPpath(b) {
+    return (b[1] == V.KNIGHT ? "Enpassant/" : "") + b;
+  }
+
   canIplay(side, [x, y]) {
     const xBounds = side == 'w' ? [4,7] : [0,3];
     return this.turn == side && x >= xBounds[0] && x <= xBounds[1];
@@ -154,6 +159,8 @@ export class MonochromeRules extends ChessRules {
   static GenRandInitFen(randomness) {
     // Remove the en-passant + castle part of the FEN
     let fen = ChessRules.GenRandInitFen(randomness).slice(0, -6);
+    // Replace kings with queens
+    fen = fen.replace("k", "q").replace("K", "Q");
     // Move pawns up:
     fen = fen.replace("pppppppp/8","8/pppppppp")
              .replace("8/PPPPPPPP","PPPPPPPP/8");
@@ -211,4 +218,5 @@ export class MonochromeRules extends ChessRules {
     }
     return notation;
   }
+
 };