Я создаю игру с 4 игроками, используя node.js и socket.io. В моей игре каждый игрок имеет свои координаты, все хорошо, кроме движения. У меня проблемы с перемещением моих персонажей. Я не знаю, что я делаю неправильно. Буду благодарен за любую помощь.node.js, socket.io movement
стороне сервера:
socket.on('move', function(data)
{
var w = data["dir"];
var x = data["x"];
var y = data["y"];
if(w == "down")
y += 5;
if(w == "up")
y -= 5;
if(w == "left")
x -= 5;
if(w == "right")
x += 5;
console.log(y);
io.sockets.emit("_movement",{ "X" : x, "Y" : y});
});
стороне клиента:
window.addEventListener("keydown", movement);
function movement(evt)
{
switch(evt.keyCode)
{
case 40:
socket.emit("move", {"y" : socketPlayer1.playerImage.y, "dir" : "down"});
break;
case 38:
socket.emit("move", {"y" : socketPlayer1.playerImage.y, "dir" : "up"});
break;
case 37:
socket.emit("move", {"x" : socketPlayer1.playerImage.x, "dir": "left" });
break;
case 39:
socket.emit("move", {"x" : socketPlayer1.playerImage.x, "dir": "right" });
break;
}
}
}
socket.on("_movement", function(data)
{
socketPlayer1.x = data["X"];
socketPlayer1.y = data["Y"];
});
Спасибо за внимание.
В чем проблема? – bolav
Персонажи не двигаются. Как я уже говорил до –
Можете ли вы напечатать значения x и y на стороне сервера? –