diff options
Diffstat (limited to 'server.js')
| -rw-r--r-- | server.js | 23 |
1 files changed, 13 insertions, 10 deletions
@@ -65,21 +65,19 @@ var State = { function Channel() { this.state = State.WAITING; this.messages = []; + this.images = {}; + this.imageCount = 0; this.players = {}; this.message_id = 0; } +Channel.prototype.join = function(user){ + // socket.id +} Channel.prototype.push = function(message){ if (this.messages.length > 20) this.messages.shift(); this.messages.push(message); } -Channel.prototype.fave = function(id){ - for (var i = 0; i < messages.length; i++) { - if (messages[i].id == id) { - messages[i].faves++; - } - } -} -Channel.prototype.join = function(){ +Channel.prototype.report = function(){ return { state: this.state, messages: this.messages, @@ -87,14 +85,19 @@ Channel.prototype.join = function(){ } } - var game = new Channel (); io.sockets.on( 'connection', function(socket){ - socket.emit( 'event-join', game.join() ); + socket.emit( 'event-welcome', game.report() ); + socket.on( 'event-join', function(data){ + socket.broadcast.emit('event-join', data); + } ); socket.on( 'event-message', function(data){ game.push(data); socket.broadcast.emit('event-message', data); } ); + socket.on( 'disconnect', function(data){ + socket.broadcast.emit('event-part', data); + } ); }); /******************************* DONE |
