gpt4 book ai didi

java - 我如何在java中的服务器中发送一个点(x,y)?

转载 作者:行者123 更新时间:2023-12-01 16:10:09 25 4
gpt4 key购买 nike

我正在尝试将 Skor4 游戏(两名玩家)更改为井字游戏。问题是,在我试图更改的源代码中,仅将球的 x 维度发送到服务器,然后其他玩家获取该 x 维度并找到 y 维度。就我而言,我想发送 x 和 y 维度。我该怎么做??

当玩家玩时:

else if (myMove) {
Point pos = gameEngine.makeMove(0, x/160, y/162);//
if (pos.y >= 0) {
if (!gameEngine.isWinner(0))
if (!gameEngine.isTie()) {
redSnd.play();
status = new String("Their turn.");
connection.sendMove(pos.x); //
myMove = false;

这里是 sendMove:

public void sendMove(int col) {
String s = (new Integer(col)).toString();
send(s);
}

这里是发送:

public void send(String s) {
outStream.println(s);
}

之后其他玩家收到移动:

int istatus = connection.getTheirMove();

这里是 getTheirMove:

public int getTheirMove() {
// Make sure we're still connected
if (!isConnected())
throw new NullPointerException("Attempted to read closed socket!");
try {
String s = receive();
System.out.println("Received: " + s);
if (s == null)
return GAMEOVER;
s = s.trim();

try {
return (new Integer(s)).intValue();
} catch (NumberFormatException e) {
// It was probably a status report error
return getStatus(s);
}
} catch (IOException e) {
System.out.println("I/O Error: " + e);
System.exit(1);
return 0;
}
}

这里是接收:

public String receive() throws IOException {
return inStream.readLine();
}

最佳答案

那为什么不发送

  String coord =  x + "," + y; 

并使用 String.split() 分割 x 和 y 坐标?这将为您提供一个由两个字符串组成的数组 - x 和 y。

更进一步,您可能想要发送(比如说)一些内容来识别您的消息是什么,然后是数据。然后使用类似的方法明确地分割数据。例如消息可能如下所示:

COORD:x,y
STATUS: message

等等

关于java - 我如何在java中的服务器中发送一个点(x,y)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1565300/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com