0
我正在尝试使用Node.js创建一个简单的游戏等等。但我有一些问题。使用Node.js的多人游戏方面
第一个玩家连接,一切都很好。然而,当第二个玩家连接时,在第一个窗口中,两个玩家都会出现。在第二个窗口中只显示播放器2。另外,如果我移动播放器2,在第二个窗口,它不会在第一个窗口
搬到这里是在服务器端:
fs.createWriteStream("/Users/thomas/Desktop/connectedPlayers.md");
var players;
game.sockets.on('connection', function(socket){
fs.appendFile("/Users/thomas/Desktop/connectedPlayers.md", socket.id + '\n', function(err) {
if(err) {
console.log(err);
} else {
console.log("The file was saved!");
}
});
fs.readFile("/Users/thomas/Desktop/connectedPlayers.md", function(err, file){
if(err){
console.log(err);
}else{
players = file.toString().split('\n');
//When a player connects, all the players will get this message.
game.sockets.emit('entrance', {
id: socket.id,
players: players,
coordinates: {x: socket.x, y: socket.y},
message: 'Player ' + socket.id + ' is online'
});
}
});
});
我存储所有连接的玩家文本-file,存储在一个数组,我可以在客户端访问:
socket.on('entrance', function(data){
for(var i = 0; i < data.players.length; i++){
new Player(data.players[i]).init();
}
//console.log(data.message);
isCalled = true;
});
我真的很感激一些帮助/洞察力。谢谢!