Several small improvements + integrate options + first working draft of Cwda
[vchess.git] / client / src / variants / Rugby.js
index 04306c2..64c9942 100644 (file)
@@ -2,6 +2,11 @@ import { ChessRules } from "@/base_rules";
 import { ArrayFun } from "@/utils/array";
 
 export class RugbyRules extends ChessRules {
+
+  static get Options() {
+    return null;
+  }
+
   static get HasFlags() {
     return false;
   }
@@ -14,6 +19,8 @@ export class RugbyRules extends ChessRules {
     );
   }
 
+  scanKings() {}
+
   getPotentialMovesFrom(sq) {
     // There are only pawns:
     return this.getPotentialPawnMoves(sq);
@@ -26,7 +33,7 @@ export class RugbyRules extends ChessRules {
       this.turn == 'w'
         ? [ [-1,-1], [-1,1], [0,1], [0,-1], [1,-1], [1,0], [1,1] ]
         : [ [1,-1], [1,1], [0,1], [0,-1], [-1,-1], [-1,0], [-1,1] ];
-    let addMoves = this.getSlideNJumpMoves(sq, steps, "oneStep");
+    let addMoves = this.getSlideNJumpMoves(sq, steps, 1);
     return moves.concat(addMoves.filter(m => m.vanish.length == 1));
   }
 
@@ -44,6 +51,10 @@ export class RugbyRules extends ChessRules {
   preUndo() {}
   postUndo() {}
 
+  getCheckSquares() {
+    return [];
+  }
+
   getCurrentScore() {
     // Turn has changed:
     const color = V.GetOppCol(this.turn);
@@ -55,4 +66,9 @@ export class RugbyRules extends ChessRules {
     // Stalemate (will probably never happen)
     return "1/2";
   }
+
+  getNotation(move) {
+    return V.CoordsToSquare(move.start) + V.CoordsToSquare(move.end);
+  }
+
 };