diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/Client.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/Client.java index 1b8cf250c2371d527ecd37daae8c8ad74162d7c3..d85b3389b5174fcb919ebc36f067f4d65354b0c4 100644 --- a/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/Client.java +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/Client.java @@ -6,6 +6,7 @@ import org.apache.logging.log4j.Logger; import java.net.*; import java.io.*; +import java.util.Arrays; public class Client { private Socket clientSocket; @@ -20,14 +21,11 @@ public class Client { in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream())); } - public int sendX(int number) throws IOException { - out.println("x:" + number); - return number; - } - - public int sendY(int number) throws IOException { - out.println("y:" + number); - return number; + public int[] sendcords(int[] cords) throws IOException { + String message = String.join(",", Arrays.stream(cords).mapToObj(String::valueOf).toArray(String[]::new)); + out.println(message); + log.info("Sent coordinates: " + message); + return cords; } diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/ConnectionHandling.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/ConnectionHandling.java index 52a154034c0bc12b84c584eb704d731be8a736c2..e11381ac638e4b7271dbd6a5d57b327c8a18c88c 100644 --- a/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/ConnectionHandling.java +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/ConnectionHandling.java @@ -1,23 +1,30 @@ package de.hdm_stuttgart.battlearena.Model.Multiplayer.TestServer; import java.io.IOException; +import java.lang.reflect.Array; import java.util.concurrent.TimeUnit; public class ConnectionHandling { + private int px; + + private int py; + + private static int[] coordinates = {5,10}; + public static void main(String[] args) throws IOException, InterruptedException { Client client = new Client(); client.startConnection("localhost", 4444); - for (int i = 1; i < 10; i++){ - int x = client.sendX(1+i); - System.out.println(x); - - TimeUnit.MILLISECONDS.sleep(100); + int[] cords = client.sendcords(coordinates); + System.out.println(cords); + } - int y = client.sendY(i); - System.out.println(y); + public int getPx() { + return px; + } - TimeUnit.SECONDS.sleep(1); - } + public int getPy() { + return py; } } + diff --git a/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/Server.java b/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/Server.java index a57d69fda0654365216e0a774c51dd33df7b74f3..378a1f00a20ba00e1d46e7aff38ff5f8115da149 100644 --- a/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/Server.java +++ b/src/main/java/de/hdm_stuttgart/battlearena/Model/Multiplayer/TestServer/Server.java @@ -6,6 +6,7 @@ import org.apache.logging.log4j.Logger; import java.net.*; import java.io.*; +import java.util.Arrays; import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; @@ -17,6 +18,8 @@ public class Server { private static int px; private static int py; + private static int[] cords; + public static void main(String[] args) throws IOException { Server server = new Server(); log.info("server starting..."); @@ -55,33 +58,24 @@ public class Server { String inputLine = localIn.readLine(); + log.info(inputLine); + if (inputLine != null) { - if (inputLine.startsWith("x:")) { - int receivedX = Integer.parseInt(inputLine.substring(2)); - px = receivedX; - - localOut.println(inputLine); - localOut.flush(); - log.info("Current X and Y: " + px + " / " + py); - log.info("Sent response to client: " + receivedX); - - } else if (inputLine.startsWith("y:")) { - int receivedY = Integer.parseInt(inputLine.substring(2)); - py = receivedY; - - localOut.println(inputLine); - localOut.flush(); - log.info("Current X and Y: " + px + " / " + py); - log.info("Sent response to client: " + receivedY); + // Assuming that the input line is a comma-separated list of integers + String[] coordinates = inputLine.split(","); + cords = new int[coordinates.length]; + for (int i = 0; i < coordinates.length; i++) { + cords[i] = Integer.parseInt(coordinates[i]); } - } + + log.info(cords); + } catch (IOException e) { throw new RuntimeException(e); } }, 0, 250, TimeUnit.MILLISECONDS); } - } }