Fix parseInt() usage, rename Doubleorda --> Ordamirror, implement Clorange variant
[vchess.git] / client / src / variants / Extinction.js
index e257137..db8abc0 100644 (file)
@@ -10,26 +10,24 @@ export class ExtinctionRules extends ChessRules {
   }
 
   static IsGoodPosition(position) {
-    if (!ChessRules.IsGoodPosition(position))
-      return false;
+    if (!ChessRules.IsGoodPosition(position)) return false;
     // Also check that each piece type is present
     const rows = position.split("/");
     let pieces = {};
     for (let row of rows) {
       for (let i = 0; i < row.length; i++) {
-        if (isNaN(parseInt(row[i])) && !pieces[row[i]])
+        if (isNaN(parseInt(row[i], 10)) && !pieces[row[i]])
           pieces[row[i]] = true;
       }
     }
-    if (Object.keys(pieces).length != 12)
-      return false;
+    if (Object.keys(pieces).length != 12) return false;
     return true;
   }
 
   setOtherVariables(fen) {
     super.setOtherVariables(fen);
     const pos = V.ParseFen(fen).position;
-    // NOTE: no need for safety "|| []", because each piece type must be present
+    // NOTE: no need for safety "|| []", because each piece type is present
     // (otherwise game is already over!)
     this.material = {
       w: {
@@ -99,7 +97,6 @@ export class ExtinctionRules extends ChessRules {
       }
       return "*";
     }
-
     return this.turn == "w" ? "0-1" : "1-0"; //NOTE: currently unreachable...
   }
 
@@ -110,7 +107,8 @@ export class ExtinctionRules extends ChessRules {
         return this.material[color][p] == 0;
       })
     ) {
-      // Very negative (resp. positive) if white (reps. black) pieces set is incomplete
+      // Very negative (resp. positive)
+      // if white (reps. black) pieces set is incomplete
       return (color == "w" ? -1 : 1) * V.INFINITY;
     }
     return super.evalPosition();