New variant idea
[xogo.git] / variants / Baroque / class.js
index f87d768..84331a2 100644 (file)
@@ -1,4 +1,4 @@
-import AbstractSpecialCaptureRules from "/variants/_SpecialCaptures.js";
+import AbstractSpecialCaptureRules from "/variants/_SpecialCaptures/class.js";
 import {FenUtil} from "/utils/setupPieces.js";
 import {Random} from "/utils/alea.js";
 
@@ -34,7 +34,12 @@ export default class BaroqueRules extends AbstractSpecialCaptureRules {
 
   genRandInitBaseFen() {
     const s = FenUtil.setupPieces(
-      ['r', 'n', 'b', 'q', 'k', 'b', 'n', 'i'], {diffCol: ['b']});
+      ['r', 'n', 'b', 'q', 'k', 'b', 'n', 'i'],
+      {
+        randomness: this.options["randomness"],
+        diffCol: ['b']
+      }
+    );
     if (this.options["randomness"] <= 1) {
       // Fix immobilizers/rooks pattern
       const toExchange1 = s.w.indexOf('r'),
@@ -94,8 +99,8 @@ export default class BaroqueRules extends AbstractSpecialCaptureRules {
   isImmobilized([x, y]) {
     const piece = this.getPiece(x, y);
     const color = this.getColor(x, y);
-    const oppCol = C.GetOppCol(color);
-    const adjacentSteps = this.pieces()['k'].moves[0].steps;
+    const oppCol = C.GetOppTurn(color);
+    const adjacentSteps = this.pieces()['k'].both[0].steps;
     for (let step of adjacentSteps) {
       const [i, j] = [x + step[0], this.getY(y + step[1])];
       if (