Cleaner fen generation + first draft of Apocalypse + a few fixes
[xogo.git] / variants / _Antiking / class.js
index e92edab..941bd82 100644 (file)
@@ -26,17 +26,9 @@ export default class AbstractAntikingRules extends ChessRules {
   }
 
   pieces(color, x, y) {
-    return Object.assign(
-      {
-        'a': {
-          // Move like a king, no attacks
-          "class": "antiking",
-          moves: super.pieces(color, x, y)['k'].moves,
-          attack: []
-        }
-      },
-      super.pieces(color, x, y)
-    );
+    let antikingSpec = super.pieces(color, x, y)['k'];
+    antikingSpec["class"] = "antiking";
+    return Object.assign({'a': antikingSpec}, super.pieces(color, x, y));
   }
 
   isKing(x, y, p) {
@@ -63,9 +55,11 @@ export default class AbstractAntikingRules extends ChessRules {
       m.vanish.length == 1 || m.vanish[1].p != 'a');
   }
 
-  underCheck(squares, color) {
+  underCheck(square_s, color) {
     let res = false;
-    squares.forEach(sq => {
+    if (!Array.isArray(square_s[0]))
+      square_s = [square_s];
+    square_s.forEach(sq => {
       switch (this.getPiece(sq[0], sq[1])) {
         case 'k':
           res ||= super.underAttack(sq, color);