2012-08-14 4 views
0

작은 POF를 socket.io로 만들려고합니다. 연결된 각 플레이어가 공을 가져 와서 브라우저보기에서 드래그 앤 드롭 할 수 있습니다. 연결된 다른 사람들은 움직이는 것을보고 자신의 것을 움직일 수 있습니다. 순간little multiplayer POF with socket.io

이 응용 프로그램은 하나 개의 공을 가지고 있으며, 모든 플레이어는 다음 코드를 사용하여, 그것을 제어 할 수 있습니다

var express = require('express'); 
var app = express(); 

var server = app.listen(80); 
var io = require('socket.io').listen(server); 

var posx = 10; 
var posy = 10; 

app.configure(function() { 
    app.use(express.static(__dirname + '/public')); 
}); 

io.sockets.on('connection', function (socket) { 
    socket.emit('start', { 
     x: posx, 
     y: posy 
    }); 

    socket.on('newpos', function (data) { 
     posx = data["x"]; 
     posy = data["y"]; 
     socket.broadcast.emit('move', { x: posx, y: posy }); 
    }); 
}); 

어떻게 더 공을 가지고 갈 것입니다 각 플레이어는 자신을 제어? 다음을 생각하고있었습니다.

세션 ID와 볼의 좌표가 포함 된 Redis 해시에 저장된 Express 처리 세션을 갖습니다. 이것은 새 플레이어가 연결되어 항목을 배치 한 다음 각 이동을 모든 사람에게 보냅니다 (그러나 보낸 사람). 그러나 나는 뭔가 빠져 있다고 확신합니다.

대체로 어느 방향으로보아야합니까? 사전에

감사합니다.

답변

0

posxposyconnection 콜백 내부로 이동하면 모든 플레이어 (새 연결이라고도 함)는 자체 볼 좌표를 서버에 갖습니다. 따라서 connection 콜백 내부에서 수행하는 모든 작업은 연결된 플레이어에 대해서만 계산됩니다. 그것은 올바른 방향으로 당신을 부딪쳐 야합니다. :)

현재 : 은 무엇입니까?은 무엇입니까?

+0

증명 증명 –

+0

나는 PoC라고 부릅니다.) – jsbeckr