From e8157a6a91b4c2101a66aca197de7d2403953499 Mon Sep 17 00:00:00 2001 From: Sebastian Lenzlinger Date: Tue, 22 Mar 2022 15:47:07 +0100 Subject: [PATCH] Wiiter mit Client/Server, minor changes --- .../dbis/cs108/Multiplayer/Server/ClientHandler.java | 6 +++++- .../dmi/dbis/cs108/Multiplayer/Server/Server.java | 11 +++++++---- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/Multiplayer/Server/ClientHandler.java b/src/main/java/ch/unibas/dmi/dbis/cs108/Multiplayer/Server/ClientHandler.java index 580c99f..51c457d 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/Multiplayer/Server/ClientHandler.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/Multiplayer/Server/ClientHandler.java @@ -33,7 +33,11 @@ public class ClientHandler implements Runnable{ while(socket.isConnected()) { try { + msg = in.readLine(); + if( msg.equals("QUIT")){ + broadcastMessage("Client: " + clientUserName + " has left the Server"); + } broadcastMessage(msg); } catch (IOException e) { e.printStackTrace(); @@ -51,7 +55,7 @@ public class ClientHandler implements Runnable{ client.out.newLine(); client.out.flush(); } else { - client.out.write("Message +" + msg + "* sent!"); + client.out.write("Message: **" + msg + "** sent!"); client.out.newLine(); client.out.flush(); } diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/Multiplayer/Server/Server.java b/src/main/java/ch/unibas/dmi/dbis/cs108/Multiplayer/Server/Server.java index 74169df..747f056 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/Multiplayer/Server/Server.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/Multiplayer/Server/Server.java @@ -3,11 +3,13 @@ package ch.unibas.dmi.dbis.cs108.Multiplayer.Server; import java.io.*; import java.net.ServerSocket; import java.net.Socket; +import java.util.Scanner; public class Server { private static final int gamePort = 42069; private ServerSocket serverSocket; + Scanner sc = new Scanner(System.in); public Server(ServerSocket serverSocket) { this.serverSocket = serverSocket; @@ -15,15 +17,16 @@ public class Server { public void startServer() { try { - - + System.out.println("Port 42069 open on "); while (!serverSocket.isClosed()) { + if(sc.next().equalsIgnoreCase("quit")) { + this.closeServerSocket(); + } Socket socket = serverSocket.accept(); - System.out.println("Port 42069 open on "); ClientHandler nextClient = new ClientHandler(socket); - Thread th = new Thread(nextClient); th.start(); + } } catch (IOException e) { e.printStackTrace();