User with the same name as another user is rejected #66

Merged
H4CK3R-01 merged 1 commits from fix_duplicate_user into main 2021-07-12 11:45:24 +00:00
2 changed files with 15 additions and 11 deletions
Showing only changes of commit f14a408c87 - Show all commits

View File

@ -48,22 +48,26 @@ io.on('connection', socket => {
game[socket.room] = new Game();
}
if (game[socket.room].add_player(socket.username)) {
if (game[socket.room].get_player_index(socket.username) === -1) {
if (game[socket.room].add_player(socket.username)) {
game[socket.room].addPlayerName(data.username);
addedUser = true;
game[socket.room].addPlayerName(data.username);
addedUser = true;
socket.emit('login', game[socket.room].get_player_index(socket.username));
socket.join(socket.room);
io.in(socket.room).emit('updatePlayerNames', game[socket.room].getPlayerNames());
socket.emit('login', game[socket.room].get_player_index(socket.username));
socket.join(socket.room);
io.in(socket.room).emit('updatePlayerNames', game[socket.room].getPlayerNames());
if (game[socket.room].players.length === 1) io.to(socket.id).emit('first player');
if (game[socket.room].players.length === 1) io.to(socket.id).emit('first player');
socket.broadcast.to(socket.room).emit('user joined', socket.username);
socket.broadcast.to(socket.room).emit('user joined', socket.username);
generate_log_message(socket.room, socket.username, "JOINED", "");
generate_log_message(socket.room, socket.username, "JOINED", "");
} else {
io.to(socket.id).emit('error', 'Game started already or room has too many members');
}
} else {
io.to(socket.id).emit('error', 'Game started already or room has too many members');
io.to(socket.id).emit('error', 'Username already exists');
}
});

View File

@ -47,7 +47,7 @@ document.getElementById('ok').addEventListener('click', function () {
});
socket.on('error', function (data) {
if (data === 'Game started already or room has too many members') {
if (data === 'Game started already or room has too many members' || data === 'Username already exists') {
document.getElementById('login').style.display = 'flex';
document.getElementById('game').style.display = 'none';
document.getElementById('chat').style.display = 'none';