From 0ebac8580efd286da55cfb029748996e621fa93c Mon Sep 17 00:00:00 2001
From: eb093 <eb093@hdm-stuttgart.de>
Date: Mon, 27 Nov 2023 21:21:08 +0100
Subject: [PATCH] Added: x and y cord as array send to server.

---
 .../Model/Multiplayer/TestServer/Client.java  | 14 ++++----
 .../TestServer/ConnectionHandling.java        | 25 +++++++++------
 .../Model/Multiplayer/TestServer/Server.java  | 32 ++++++++-----------
 3 files changed, 35 insertions(+), 36 deletions(-)

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 1b8cf250..d85b3389 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 52a15403..e11381ac 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 a57d69fd..378a1f00 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);
         }
-
     }
 
 }
-- 
GitLab