Debug Knightrelay variant
[vchess.git] / client / src / views / Game.vue
index 1294d50..51e0634 100644 (file)
@@ -463,13 +463,15 @@ export default {
           game.chats.sort((c1, c2) => {
             return c2.added - c1.added;
           });
-          if (myIdx >= 0 && game.chats.length > 0) {
+          if (myIdx >= 0 && game.score == "*" && game.chats.length > 0) {
             // Did a chat message arrive after my last move?
             let vr_tmp = new V(game.fen); //start from last position
             const flags = V.ParseFen(game.fen).flags; //may be undefined
             let dtLastMove = 0;
             for (let midx = game.moves.length - 1; midx >= 0; midx--) {
-              vr_tmp.undo(Object.assign({flags:flags}, game.moves[midx].squares));
+              // NOTE: flags could be wrong, but since our only concern is turn,
+              // this should be enough. (TODO?)
+              vr_tmp.undo(Object.assign({flags:JSON.stringify(flags)}, game.moves[midx].squares));
               if (vr_tmp.turn == mycolor) {
                 dtLastMove = game.moves[midx].played;
                 break;
@@ -599,7 +601,7 @@ export default {
           if (countdown < 0)
             this.gameOver(
               currentTurn == "w" ? "0-1" : "1-0",
-              this.st.tr["Time"]
+              "Time"
             );
         } else
           this.$set(