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;
};
},
methods: {
- launchGame: function(game) {
+ launchGame: function(game, options) {
this.compWorker.postMessage(["scripts", this.gameInfo.vname]);
if (!game) {
game = {
vname: this.gameInfo.vname,
- fenStart: V.GenRandInitFen(this.st.settings.randomness),
+ fenStart: V.GenRandInitFen(options),
moves: []
};
game.fen = game.fenStart;