Use symlinks for pieces images
[vchess.git] / client / src / views / Game.vue
index e0eb1be..6261139 100644 (file)
@@ -7,7 +7,7 @@ main
   )
     .card
       label.modal-close(for="modalRules")
-      h4#variantNameInGame(@click="gotoRules") {{ game.vname }}
+      a#variantNameInGame(:href="'/#/variants/'+game.vname") {{ game.vname }}
       div(v-html="rulesContent")
   input#modalScore.modal(type="checkbox")
   div#scoreDiv(
@@ -310,9 +310,6 @@ export default {
         )
       );
     },
-    gotoRules: function() {
-      this.$router.push("/variants/" + this.game.vname);
-    },
     participateInChat: function(p) {
       return Object.keys(p.tmpIds).some(x => p.tmpIds[x].focus) && !!p.name;
     },
@@ -749,10 +746,15 @@ export default {
           if (!this.game || !this.game.moves) this.lastateAsked = true;
           else this.sendLastate(data.from);
           break;
+        // TODO: possible bad scenario: reload page while oppponent sends a
+        // move => get both lastate and newmove, process both, add move twice.
+        // Confirm scenario? Fix?
         case "lastate": {
           // Got opponent infos about last move
           this.gotLastate = true;
           this.lastate = data.data;
+          if (this.lastate.movesCount > this.gotMoveIdx)
+            this.gotMoveIdx = this.lastate.movesCount;
           if (this.game.rendered)
             // Game is rendered (Board component)
             this.processLastate();
@@ -760,6 +762,12 @@ export default {
           break;
         }
         case "newmove": {
+
+// DEBUG:
+console.log("Receive move");
+console.log(data.data);
+//moveslist not updated when receiving a move? (see in baseGame)
+
           const movePlus = data.data;
           const movesCount = this.game.moves.length;
           if (movePlus.index > movesCount) {
@@ -1054,7 +1062,7 @@ export default {
         let gameInfo = {
           id: getRandString(), //ignored if corr
           fen: V.GenRandInitFen(this.game.randomness),
-          players: this.game.players.reverse(),
+          players: [this.game.players[1], this.game.players[0]],
           vid: this.game.vid,
           cadence: this.game.cadence
         };
@@ -1772,19 +1780,19 @@ span.yourturn
   background-color: lightyellow
 
 .draw-received, .draw-received:hover
-  background-color: lightgreen
+  background-color: #73C6B6
 
 .draw-threerep, .draw-threerep:hover
-  background-color: #e4d1fc
+  background-color: #D2B4DE
 
 .rematch-sent, .rematch-sent:hover
   background-color: lightyellow
 
 .rematch-received, .rematch-received:hover
-  background-color: lightgreen
+  background-color: #48C9B0
 
 .somethingnew
-  background-color: #c5fefe
+  background-color: #D2B4DE
 
 .diagram
   margin: 0 auto
@@ -1801,11 +1809,13 @@ button.acceptBtn
 button.refuseBtn
   background-color: red
 
-h4#variantNameInGame
-  cursor: pointer
+a#variantNameInGame
+  color: var(--card-fore-color)
   text-align: center
-  text-decoration: underline
   font-weight: bold
+  font-size: calc(1rem * var(--heading-ratio))
+  line-height: 1.2
+  margin: calc(1.5 * var(--universal-margin))
 </style>
 
 <style lang="sass">