Add the user to the correct socket rooms.
This commit is contained in:
parent
fdd0b19a4c
commit
59819dba45
1 changed files with 10 additions and 8 deletions
|
|
@ -40,20 +40,16 @@ export default (io: Server, socket: Socket, data: JoinGame) => {
|
||||||
game.log.silly(`${host.name} is one of the team's guessers`);
|
game.log.silly(`${host.name} is one of the team's guessers`);
|
||||||
hand = team.hand;
|
hand = team.hand;
|
||||||
team.guessers.push(host);
|
team.guessers.push(host);
|
||||||
socket.join([
|
|
||||||
`${game.id}:*:guesser`,
|
|
||||||
`${game.id}:${team.id}:guesser`
|
|
||||||
]);
|
|
||||||
break;
|
break;
|
||||||
case "writer":
|
case "writer":
|
||||||
game.log.silly(`${host.name} is the team's writer`);
|
game.log.silly(`${host.name} is the team's writer`);
|
||||||
team.writer = host;
|
team.writer = host;
|
||||||
socket.join([
|
|
||||||
`${game.id}:*:writer`,
|
|
||||||
`${game.id}:${team.id}:writer`
|
|
||||||
]);
|
|
||||||
break;
|
break;
|
||||||
};
|
};
|
||||||
|
socket.join([
|
||||||
|
`${game.id}:*:${host.role}`,
|
||||||
|
`${game.id}:${host.team}:${host.role}`
|
||||||
|
]);
|
||||||
game.log.debug(`Host assigned to team`);
|
game.log.debug(`Host assigned to team`);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -103,14 +99,20 @@ export default (io: Server, socket: Socket, data: JoinGame) => {
|
||||||
|
|
||||||
if (!sameName.socket?.connected) {
|
if (!sameName.socket?.connected) {
|
||||||
sameName.socket = socket;
|
sameName.socket = socket;
|
||||||
|
let rooms: string[] = [game.id];
|
||||||
game.log.info(`Player Reconnected to the game (name=${data.name})`);
|
game.log.info(`Player Reconnected to the game (name=${data.name})`);
|
||||||
|
|
||||||
// Get the hand of the player's team
|
// Get the hand of the player's team
|
||||||
let hand: string[] = [];
|
let hand: string[] = [];
|
||||||
if (sameName.team && sameName.role == `guesser`) {
|
if (sameName.team && sameName.role == `guesser`) {
|
||||||
hand = game.teams[sameName.team - 1].hand;
|
hand = game.teams[sameName.team - 1].hand;
|
||||||
|
rooms.push(
|
||||||
|
`${game.id}:*:${sameName.role}`,
|
||||||
|
`${game.id}:${sameName.team}:${sameName.role}`
|
||||||
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
socket.join(rooms);
|
||||||
socket.emit(`GameRejoined`, {
|
socket.emit(`GameRejoined`, {
|
||||||
status: 200,
|
status: 200,
|
||||||
ingame: game.ingame,
|
ingame: game.ingame,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue