// TODO: shuffling and random filtering on server,
// if the room is really crowded.
Object.keys(data.sockIds).forEach(sid => {
- // TODO: test sid != user.sid was already done on server
if (sid != this.st.user.sid) {
- this.people[sid] = { tmpIds: data.sockIds[sid] };
this.send("askidentity", { target: sid });
+ this.people[sid] = { tmpIds: data.sockIds[sid] };
+ } else {
+ // Complete my tmpIds:
+ Object.assign(this.people[sid].tmpIds, data.sockIds[sid]);
}
});
break;
this.send("fullgame", { data: gameToSend, target: data.from });
break;
case "fullgame":
- // Callback "roomInit" to poll clients only after game is loaded
- this.loadVariantThenGame(data.data, this.roomInit);
+ if (!!data.data.empty) {
+ alert(this.st.tr["The game should be in another tab"]);
+ this.$router.go(-1);
+ }
+ else
+ // Callback "roomInit" to poll clients only after game is loaded
+ this.loadVariantThenGame(data.data, this.roomInit);
break;
case "asklastate":
// Sending informative last state if I played a move or score != "*"