Merge pull request #66 from H4CK3R-01/fix_duplicate_user

User with the same name as another user is rejected
This commit is contained in:
Fabian Thomé 2021-07-12 13:45:24 +02:00 committed by GitHub
commit c4efe23c3d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 15 additions and 11 deletions

View File

@ -48,6 +48,7 @@ io.on('connection', socket => {
game[socket.room] = new Game(); game[socket.room] = new Game();
} }
if (game[socket.room].get_player_index(socket.username) === -1) {
if (game[socket.room].add_player(socket.username)) { if (game[socket.room].add_player(socket.username)) {
game[socket.room].addPlayerName(data.username); game[socket.room].addPlayerName(data.username);
@ -65,6 +66,9 @@ io.on('connection', socket => {
} else { } else {
io.to(socket.id).emit('error', 'Game started already or room has too many members'); io.to(socket.id).emit('error', 'Game started already or room has too many members');
} }
} else {
io.to(socket.id).emit('error', 'Username already exists');
}
}); });
socket.on('new message', function (data) { socket.on('new message', function (data) {

View File

@ -47,7 +47,7 @@ document.getElementById('ok').addEventListener('click', function () {
}); });
socket.on('error', function (data) { 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('login').style.display = 'flex';
document.getElementById('game').style.display = 'none'; document.getElementById('game').style.display = 'none';
document.getElementById('chat').style.display = 'none'; document.getElementById('chat').style.display = 'none';