X-Git-Url: https://git.auder.net/img/rock_paper_scissors_lizard_spock.gif?a=blobdiff_plain;f=public%2Fjavascripts%2Fcomponents%2Fgame.js;h=96833bc087130bc138690a86d9102314d55c2e2e;hb=0869b00a0e716a559c7a70ba2d854eed91689e33;hp=147aeafeeb76f066daf27878785b96d7102a96e4;hpb=7d6b0773c093ad4347ff8b444236e7d89b06977e;p=vchess.git diff --git a/public/javascripts/components/game.js b/public/javascripts/components/game.js index 147aeafe..96833bc0 100644 --- a/public/javascripts/components/game.js +++ b/public/javascripts/components/game.js @@ -616,12 +616,12 @@ Vue.component('my-game', { this.oppConnected = true; this.mycolor = color; this.seek = false; + this.mode = "human"; if (!!moves && moves.length > 0) //imply continuation { - const oppCol = this.vr.turn; const lastMove = moves[moves.length-1]; this.vr.undo(lastMove); - this.incheck = this.vr.getCheckSquares(lastMove, oppCol); + this.incheck = this.vr.getCheckSquares(lastMove); this.vr.play(lastMove, "ingame"); } delete localStorage["newgame"]; @@ -629,14 +629,14 @@ Vue.component('my-game', { } else //against computer { + this.mode = "computer"; this.mycolor = Math.random() < 0.5 ? 'w' : 'b'; if (this.mycolor == 'b') setTimeout(this.playComputerMove, 500); } }, playComputerMove: function() { - const compColor = this.mycolor=='w' ? 'b' : 'w'; - const compMove = this.vr.getComputerMove(compColor); + const compMove = this.vr.getComputerMove(); // HACK: avoid selecting elements before they appear on page: setTimeout(() => this.play(compMove, "animate"), 500); }, @@ -751,8 +751,7 @@ Vue.component('my-game', { this.animateMove(move); return; } - const oppCol = this.vr.getOppCol(this.vr.turn); - this.incheck = this.vr.getCheckSquares(move, oppCol); //is opponent in check? + this.incheck = this.vr.getCheckSquares(move); //is opponent in check? // Not programmatic, or animation is over if (this.mode == "human" && this.vr.turn == this.mycolor) this.conn.send(JSON.stringify({code:"newmove", move:move, oppid:this.oppid})); @@ -760,7 +759,7 @@ Vue.component('my-game', { this.vr.play(move, "ingame"); if (this.mode == "human") this.updateStorage(); //after our moves and opponent moves - const eog = this.vr.checkGameOver(this.vr.turn); + const eog = this.vr.checkGameOver(); if (eog != "*") this.endGame(eog); else if (this.mode == "computer" && this.vr.turn != this.mycolor)