Fix some variants and improve a few other things a little bit
[vchess.git] / client / src / variants / Knightrelay.js
index daa7bbb..de1e89a 100644 (file)
@@ -29,7 +29,7 @@ export const VariantRules = class KnightrelayRules extends ChessRules {
             // Potential promotions:
             const finalPieces = piece == V.PAWN && x + step[0] == lastRank
               ? [V.ROOK, V.KNIGHT, V.BISHOP, V.QUEEN]
-              : [V.PAWN];
+              : [piece];
             for (let p of finalPieces) {
               moves.push(
                 this.getBasicMove([x,y], [x+step[0],y+step[1]], {
@@ -77,6 +77,17 @@ export const VariantRules = class KnightrelayRules extends ChessRules {
     return false;
   }
 
+  static get VALUES() {
+    return {
+      p: 1,
+      r: 5,
+      n: 7, //the knight is valuable
+      b: 3,
+      q: 9,
+      k: 1000
+    };
+  }
+
   getNotation(move) {
     if (move.appear.length == 2 && move.appear[0].p == V.KING)
       // Castle