vid: parseInt(localStorage.getItem("vid")) || 0,
to: "", //name of challenged player (if any)
cadence: localStorage.getItem("cadence") || "",
- randomness: parseInt(localStorage.getItem("challRandomness")) || 2,
+ randomness:
+ // Warning: randomness can be 0, then !!randomness is false
+ (parseInt(localStorage.getItem("challRandomness"))+1 || 3) - 1,
// VariantRules object, stored to not interfere with
// diagrams of targetted challenges:
V: null,
}
});
const gid = gids[Math.floor(Math.random() * gids.length)];
- const game = this.games.find(g => g.id == gid);
- if (!!game) this.showGame(game);
- else this.$router.push("/game/" + gid); //game vs. me
+ window.open("/#/game/" + gid, "_blank");
},
showGame: function(g) {
// NOTE: we are an observer, since only games I don't play are shown here
// ==> Moves sent by connected remote player(s) if live game
- this.$router.push("/game/" + g.id);
+ window.open("/#/game/" + g.id, "_blank");
},
toggleSocialColor: function(action) {
if (!action && document.getElementById("modalPeople").checked)
// Ignore games where I play (will go in MyGames page),
// and also games that I already received.
if (
+ this.games.findIndex(g => g.id == game.id) == -1 &&
game.players.every(p => {
return (
p.sid != this.st.user.sid &&
(p.id == 0 || p.id != this.st.user.id)
);
- }) && this.games.findIndex(g => g.id == game.id) == -1
+ })
) {
let newGame = game;
newGame.type = this.classifyObject(game);
newGame.score = "*";
this.games.push(newGame);
if (
+ newGame.score == '*' &&
(newGame.type == "live" && this.gdisplay == "corr") ||
(newGame.type == "corr" && this.gdisplay == "live")
) {
if (
this.cursor == Number.MAX_SAFE_INTEGER &&
this.games.length == 0 &&
- this.gdisplay == "live"
+ this.gdisplay == "live" &&
+ res.games.some(g => g.score == '*')
) {
// First loading: show indicators
document
{ body: "vs " + game.players[1-myIdx].name || "@nonymous" }
);
}
- this.$router.push("/game/" + gameInfo.id);
+ this.$router.push(
+ "/game/" + gameInfo.id + "/?focus=" + this.focus);
});
},
this.focus ? 500 + 1000 * Math.random() : 0