Several small improvements + integrate options + first working draft of Cwda
[vchess.git] / client / src / variants / Synchrone2.js
index af77a8c..17b0be3 100644 (file)
@@ -47,8 +47,8 @@ export class Synchrone2Rules extends Synchrone1Rules {
     );
   }
 
-  static GenRandInitFen(randomness) {
-    const res = ChessRules.GenRandInitFen(randomness);
+  static GenRandInitFen(options) {
+    const res = ChessRules.GenRandInitFen(options);
     // Add initFen field:
     return res.slice(0, -1) + res.split(' ')[0] + " -";
   }
@@ -102,7 +102,7 @@ export class Synchrone2Rules extends Synchrone1Rules {
       );
     });
     const passTarget =
-      (x != this.kingPos[c][0] || y != this.kingPos[c][0]) ? c : oppCol;
+      (x != this.kingPos[c][0] || y != this.kingPos[c][1]) ? c : oppCol;
     movesNow.push(
       new Move({
         start: { x: x, y: y },
@@ -223,12 +223,15 @@ export class Synchrone2Rules extends Synchrone1Rules {
   }
 
   getCurrentScore() {
-    if (this.movesCount % 4 != 0)
-      // Turn (2 x [white + black]) not over yet
+    if (this.movesCount % 2 != 0)
+      // Turn [white + black] not over yet
       return "*";
     // Was a king captured?
     if (this.kingPos['w'][0] < 0) return "0-1";
     if (this.kingPos['b'][0] < 0) return "1-0";
+    if (this.movesCount % 4 == 2)
+      // Turn (2 x [white + black]) not over yet
+      return "*";
     const whiteCanMove = this.atLeastOneMove('w');
     const blackCanMove = this.atLeastOneMove('b');
     if (whiteCanMove && blackCanMove) return "*";