summaryrefslogtreecommitdiff
path: root/app.js
diff options
context:
space:
mode:
Diffstat (limited to 'app.js')
-rw-r--r--app.js21
1 files changed, 15 insertions, 6 deletions
diff --git a/app.js b/app.js
index 2b1bfce..d6c2a6c 100644
--- a/app.js
+++ b/app.js
@@ -159,7 +159,8 @@ io.sockets.on('connection', function (socket) {
}
socket.emit('scores', {
'scores': scores.reverse(),
- 'users': users
+ 'users': users,
+ 'now': Date.now()
})
});
@@ -185,7 +186,10 @@ io.sockets.on('connection', function (socket) {
image: user.image,
count: user.count,
connected: now,
- active: true
+ current: 0,
+ active: true,
+ x: -9999,
+ y: -9999
};
io.sockets.emit('count', {
@@ -196,17 +200,21 @@ io.sockets.on('connection', function (socket) {
});
socket.on('mouse', function(data){
+ if (! socket.user || ! data || ! data.x || ! data.y) return;
+ users[socket.user.id].x = data.x;
+ users[socket.user.id].y = data.y;
io.sockets.volatile.emit('mouse', data);
});
socket.on('blur', function(data){
if (! socket.user) return;
var now = Date.now();
- updateTime(socket.user, now, socket.connected);
- socket.connected = now;
if (socket.user.id in users) {
users[socket.user.id].active = false;
+ users[socket.user.id].current += now - socket.connected;
}
+ updateTime(socket.user, now, socket.connected);
+ socket.connected = now;
io.sockets.emit('blur', data);
});
@@ -214,7 +222,9 @@ io.sockets.on('connection', function (socket) {
if (!socket.user) return;
var now = Date.now();
socket.connected = now;
- users[socket.user.id].active = true;
+ if (socket.user.id in users) {
+ users[socket.user.id].active = true;
+ }
io.sockets.emit('focus', data);
});
@@ -230,7 +240,6 @@ io.sockets.on('connection', function (socket) {
users: users,
now: now
});
-
});
});