我正在尝试从服务器向玩家发送玩家的位置(x,y)。其他一切似乎都有效,但不是这两个整体。我可以发送其他整数,例如3456,它将获得3456.但这些都不会工作。
服务器Java代码:
public void sendAccountInformation() throws IOException { dos.write(player.id); main.log(player.id); dos.println(player.username); main.log(player.username); dos.write(player.x); main.log(player.x); dos.write(player.y); main.log(player.y); dos.write(player.mapid); main.log(player.mapid); dos.flush(); }
服务器输出:
0 sdfsdffsd 544 384 0
以上是应该发送的正确信息。
客户端Java代码:
public void loadAccount() throws IOException { int id = dis.read(); main.player = new Player(id, main); main.log(id); main.player.username = dis.readLine(); main.log(main.player.username); main.player.x = dis.read(); main.log(main.player.x); main.player.y = dis.read(); main.log(main.player.y); main.player.mapid = dis.read(); main.log(main.player.mapid); }
客户端输出:
0 sdfsdffsd 63 63 0
如您所见,两个整数(544和384)变为(63和63)。但其他所有发送和收到的都是正确的吗?