|
|
@ -123,13 +123,10 @@ var NPGServer = { |
|
|
|
self.log('Server: User name already taken - reseting client UI'); |
|
|
|
} else { |
|
|
|
self.createUser(data, socket); |
|
|
|
self.updateAllClientsServerInfos(); |
|
|
|
//
|
|
|
|
self.sendMsgToSocket(socket, 'regDone'); |
|
|
|
} |
|
|
|
/* |
|
|
|
self.updateClientsServerInfo(); // update all clients info
|
|
|
|
io.sockets.sockets[socketId].emit('playerCreated'); // send socket msg
|
|
|
|
}, |
|
|
|
*/ |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
//
|
|
|
@ -139,6 +136,8 @@ var NPGServer = { |
|
|
|
if (self.isUser(id)) { |
|
|
|
self.log('[Client:' + id + '] User ' + u.name + ' disconnected'); |
|
|
|
self.deleteUser(u.name); |
|
|
|
//
|
|
|
|
self.updateAllClientsServerInfos(); |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
@ -207,13 +206,6 @@ var NPGServer = { |
|
|
|
self.users.push(new User(name, socket)); |
|
|
|
self.log('Server: number of players: n= ' + self.users.length); |
|
|
|
self.log('Server: player registered, send user ' + name + ' to menu page.'); |
|
|
|
// send user auth
|
|
|
|
self.sendMsgToSocket(socket, 'regDone'); |
|
|
|
}, |
|
|
|
|
|
|
|
removeDuplicateUser: function(name) { |
|
|
|
var self = this; |
|
|
|
self.log('Server: player already registered, removing duplicate.'); |
|
|
|
}, |
|
|
|
|
|
|
|
//
|
|
|
@ -229,6 +221,76 @@ var NPGServer = { |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
* |
|
|
|
* Server Infos (players and games) |
|
|
|
* |
|
|
|
*/ |
|
|
|
//---
|
|
|
|
updateAllClientsServerInfos: function(socket) { |
|
|
|
var self = this; |
|
|
|
for (u in self.users) { |
|
|
|
self.users[u].sendMsg('serverInfosUpdate', { infos: self.getServerInfos(), games: self.getGamesList() }); |
|
|
|
} |
|
|
|
self.log('Server: updated server infos for all clients'); |
|
|
|
}, |
|
|
|
|
|
|
|
//---
|
|
|
|
updateClientServerInfos: function(socket) { |
|
|
|
var self = this; |
|
|
|
socket.emit('serverInfosUpdate', { infos: self.getServerInfos(), games: self.getGamesList() }); |
|
|
|
self.log('Server: update client server info'); |
|
|
|
}, |
|
|
|
|
|
|
|
//---
|
|
|
|
getServerInfos: function() { |
|
|
|
var self = this; |
|
|
|
return { |
|
|
|
nUsers: self.nPlayers(), |
|
|
|
nGamesRunning: self.nGamesRunning(), |
|
|
|
nGamesAvail: self.nGamesAvail() |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
//---
|
|
|
|
getGamesList: function() { |
|
|
|
var self = this; |
|
|
|
var res = []; |
|
|
|
for (g in self.games) { |
|
|
|
res.push(self.games[g].getHostName()); |
|
|
|
} |
|
|
|
return res; |
|
|
|
}, |
|
|
|
|
|
|
|
//---
|
|
|
|
nPlayers: function() { |
|
|
|
var self = this; |
|
|
|
return self.users.length; |
|
|
|
}, |
|
|
|
|
|
|
|
//---
|
|
|
|
nGamesRunning: function() { |
|
|
|
var self = this; |
|
|
|
var n = 0; |
|
|
|
for (g in self.games) { |
|
|
|
if (self.games[g].status == 'running') n++; |
|
|
|
} |
|
|
|
return n; |
|
|
|
}, |
|
|
|
|
|
|
|
//---
|
|
|
|
nGamesAvail: function() { |
|
|
|
var self = this; |
|
|
|
var n = 0; |
|
|
|
for (g in self.games) { |
|
|
|
if (self.games[g].status == 'available') n++; |
|
|
|
} |
|
|
|
return n; |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
@ -240,13 +302,11 @@ var NPGServer = { |
|
|
|
* |
|
|
|
*/ |
|
|
|
var User = function(name, socket) { |
|
|
|
|
|
|
|
//
|
|
|
|
this.name = (name !== undefined) ? name : ''; |
|
|
|
this.socket = (socket !== undefined) ? socket : ''; |
|
|
|
//
|
|
|
|
this.status = ''; |
|
|
|
|
|
|
|
}; |
|
|
|
//
|
|
|
|
User.prototype.constructor = User; |
|
|
|