From 15c406ab55cd3965fe806eb094938bcf61d64e65 Mon Sep 17 00:00:00 2001
From: Benjamin Auder <benjamin.auder@somewhere>
Date: Fri, 22 Jan 2021 17:51:15 +0100
Subject: [PATCH] Fix issue with animation of some hidden moves (Screen)

---
 client/src/components/ComputerGame.vue | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/client/src/components/ComputerGame.vue b/client/src/components/ComputerGame.vue
index fbf2d8e7..91689229 100644
--- a/client/src/components/ComputerGame.vue
+++ b/client/src/components/ComputerGame.vue
@@ -44,10 +44,14 @@ export default {
       setTimeout(() => {
         if (this.currentUrl != document.location.href) return; //page change
         self.$refs["basegame"].play(compMove, "received");
-        const animationLength =
+        let animationLength = 0;
+        const mvArray = (Array.isArray(compMove) ? compMove : [compMove]);
+        const realLength =
+          mvArray.filter(m => m.start.x >= 0 && !m.end.noHighlight).length;
+        if (realLength >= 1)
           // 250 = length of animation, 500 = delay between sub-moves
           // TODO: a callback would be cleaner.
-          250 + (Array.isArray(compMove) ? (compMove.length - 1) * 750 : 0);
+          animationLength = 250 + (realLength - 1) * 750;
         setTimeout(
           () => {
             self.compThink = false;
-- 
2.44.0