X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=public%2Fjavascripts%2Fcomponents%2Fgame.js;h=4c369e4c5d990695416da38a451b2f25c08164d0;hb=684e1cace30baf9cf5b9d8827ae6c86378a5dff1;hp=6627252fd6d3c8e54fd068b879c92a0aef403a2d;hpb=5915f72002ae63b04620cebe47adf778174b1bee;p=vchess.git diff --git a/public/javascripts/components/game.js b/public/javascripts/components/game.js index 6627252f..4c369e4c 100644 --- a/public/javascripts/components/game.js +++ b/public/javascripts/components/game.js @@ -443,7 +443,7 @@ Vue.component('my-game', { { myReservePiecesArray.push(h('div', { - 'class': {'board':true, ['board'+sizeY+'-reserve']:true}, + 'class': {'board':true, ['board'+sizeY]:true}, attrs: { id: this.getSquareId({x:sizeX+shiftIdx,y:i}) } }, [ @@ -467,7 +467,7 @@ Vue.component('my-game', { { oppReservePiecesArray.push(h('div', { - 'class': {'board':true, ['board'+sizeY+'-reserve']:true}, + 'class': {'board':true, ['board'+sizeY]:true}, attrs: { id: this.getSquareId({x:sizeX+(1-shiftIdx),y:i}) } }, [ @@ -1287,6 +1287,12 @@ Vue.component('my-game', { }, clickComputerGame: function(e) { this.getRidOfTooltip(e.currentTarget); + if (this.mode == "computer" && this.score == "*" + && this.vr.turn != this.mycolor) + { + // Wait for computer reply first (avoid potential "ghost move" bug) + return; + } this.newGame("computer"); }, clickFriendGame: function(e) { @@ -1344,8 +1350,6 @@ Vue.component('my-game', { return; } } - else if (score == "*") - return this.continueGame("computer"); } } else if (mode == "friend") @@ -1416,7 +1420,7 @@ Vue.component('my-game', { else if (mode == "computer") { this.compWorker.postMessage(["init",fen]); - if (this.mycolor != this.vr.turn) + if (score == "*" && this.mycolor != this.vr.turn) this.playComputerMove(); } //else: nothing special to do in friend mode