porque nao consigo acessar os dados dessa funçao?
essa funçao conecta no servidor tcp e recebe os dados veja abaixo.
var socket = io.connect('http://localhost:4000');
function conexao(e)
{
var that = this;
socket.on('addPlayer',
function (data)
{
log("[addPlayer] {" + data.pid + ', ' + data.name + ', ' + data.x + ', ' + data.y + '}');
players[data.pid] = new Player(data.pid, data.x, data.y);
players[data.pid].name = data.name;
if(data.sessionid == socket.sessionid){
localId = data.pid;
localPlayer = that.players[data.pid];
}
}
);
socket.on('chat',
function (data)
{
log("[chat] {" + data.message + '}');
addChatMessage(data.message);
}
);
socket.on('position',
function (data)
{
log("[position] {" + data.pid + ": playerX = " + data.playerX + ", playerY = " + data.playerY + "}");
that.setPlayerPosition(data.pid, data.playerX, data.playerY);
}
);
console.log('connected!');
}
e essa funçao deveria pegar os dados e adicionar uma imagem conforme o id, posiçaox e posiçaoy selecionado pelo loop for in.
veja abaixo.
function anima(e)
{
for(var p in players)
{
var player = players[p];
var xpos = (data.playerX-data.playerY)*this.tileH + mapX;
var ypos = (data.playerX+data.playerY)*this.tileH/2+ mapY;
ctx.drawImage(charImg[0],xpos,ypos-(charImg[0].height/2));
}
}
entao parece que os dados obtido no retorno do servidor nao esta entrando no loop for in alguem sabe onde estou errando?
Discussão (2)
Carregando comentários...