Fix Synchrone2::filterValid()
authorBenjamin Auder <benjamin.auder@somewhere>
Fri, 8 Jan 2021 19:03:29 +0000 (20:03 +0100)
committerBenjamin Auder <benjamin.auder@somewhere>
Fri, 8 Jan 2021 19:03:29 +0000 (20:03 +0100)
client/src/variants/Synchrone2.js

index ee01684..5539c9e 100644 (file)
@@ -118,10 +118,10 @@ export class Synchrone2Rules extends Synchrone1Rules {
   }
 
   filterValid(moves) {
-    if (moves.length == 0) return [];
-    if (moves.length == 1 && moves[0].vanish.length == 0) return moves;
+    const nonEmptyMove = moves.find(m => m.vanish.length > 0);
+    if (!nonEmptyMove) return moves;
     // filterValid can be called when it's "not our turn":
-    const color = moves.find(m => m.vanish.length > 0).vanish[0].c;
+    const color = nonEmptyMove.vanish[0].c;
     return moves.filter(m => {
       if (m.vanish.length == 0) return true;
       const piece = m.vanish[0].p;