X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=client%2Fsrc%2Fcomponents%2FBaseGame.vue;h=2a1a4474e383138c509ee4e9d1fd282b08b64388;hb=b9a5fe01da415dfbea740651c04e6e10dace2c21;hp=100f7efb49b6cb997c528ed0c2cf1e9265599275;hpb=cc00b83cd8e91a3defa99acc95ee8bc7e6c8a819;p=vchess.git diff --git a/client/src/components/BaseGame.vue b/client/src/components/BaseGame.vue index 100f7efb..2a1a4474 100644 --- a/client/src/components/BaseGame.vue +++ b/client/src/components/BaseGame.vue @@ -23,11 +23,16 @@ div#baseGame ) #turnIndicator(v-if="showTurn") {{ turn }} #controls - button(@click="gotoBegin()") << - button(@click="undo()") < - button(v-if="canFlip" @click="flip()") ⇅ - button(@click="play()") > - button(@click="gotoEnd()") >> + button(@click="gotoBegin()") + img.inline(src="/images/icons/fast-forward_rev.svg") + button(@click="undo()") + img.inline(src="/images/icons/play_rev.svg") + button(v-if="canFlip" @click="flip()") + img.inline(src="/images/icons/flip.svg") + button(@click="play()") + img.inline(src="/images/icons/play.svg") + button(@click="gotoEnd()") + img.inline(src="/images/icons/fast-forward.svg") #belowControls #downloadDiv(v-if="allowDownloadPGN") a#download(href="#") @@ -45,7 +50,6 @@ div#baseGame | {{ st.tr["Rules"] }} #movesList MoveList( - v-if="showMoves != 'none'" :show="showMoves" :score="game.score" :message="game.scoreMsg" @@ -355,21 +359,22 @@ export default { })(); }; const afterMove = (smove, initurn) => { - if (this.st.settings.sound == 2) - new Audio("/sounds/move.mp3").play().catch(() => {}); if (this.vr.turn != initurn) { // Turn has changed: move is complete - if (!smove.fen) + if (!smove.fen) { // NOTE: only FEN of last sub-move is required (thus setting it here) smove.fen = this.vr.getFen(); + this.emitFenIfAnalyze(); + } this.inMultimove = false; const score = this.vr.getCurrentScore(); if (score != "*") { const message = getScoreMessage(score); if (!navigate && this.game.mode != "analyze") this.$emit("gameover", score, message); - // Just show score on screen (allow undo) - else this.showEndgameMsg(score + " . " + this.st.tr[message]); + else if (this.game.mode == "analyze") + // Just show score on screen (allow undo) + this.showEndgameMsg(score + " . " + this.st.tr[message]); } if (!navigate && this.game.mode != "analyze") { const L = this.moves.length; @@ -408,10 +413,8 @@ export default { if (received && this.cursor < this.moves.length - 1) this.gotoEnd(); playMove(); - this.emitFenIfAnalyze(); }, cancelCurrentMultimove: function() { - // Cancel current multi-move const L = this.moves.length; let move = this.moves[L-1]; if (!Array.isArray(move)) move = [move]; @@ -440,8 +443,6 @@ export default { if (light) this.cursor--; else { this.positionCursorTo(this.cursor - 1); - if (this.st.settings.sound == 2) - new Audio("/sounds/undo.mp3").play().catch(() => {}); this.incheck = this.vr.getCheckSquares(this.vr.turn); this.emitFenIfAnalyze(); } @@ -508,10 +509,17 @@ export default { #controls margin: 0 auto text-align: center + display: flex button display: inline-block width: 20% margin: 0 + img.inline + height: 24px + padding-top: 5px + @media screen and (max-width: 767px) + img.inline + height: 18px #turnIndicator text-align: center