diff --git a/assignments/src/MV3500Cohort2024JulySeptember/homework2/Smith/Server.java b/assignments/src/MV3500Cohort2024JulySeptember/homework2/Smith/Server.java index 09a08b2a969b78b6816ad430378de98872d09004..dda4bc4f09157728d643d3d5ec23a4e1b1307a67 100644 --- a/assignments/src/MV3500Cohort2024JulySeptember/homework2/Smith/Server.java +++ b/assignments/src/MV3500Cohort2024JulySeptember/homework2/Smith/Server.java @@ -5,6 +5,7 @@ import java.net.*; import java.util.Random; public class Server { + private static int runningTotal = 0; // Initialize running total public Server() { @@ -30,49 +31,52 @@ public class Server { // Read the number sent by the client BufferedReader br = new BufferedReader(new InputStreamReader(clientConnectionSocket.getInputStream())); String clientChoice = br.readLine(); - + + if ((!"rock".equals(clientChoice)) && (!"scissors".equals(clientChoice)) && (!"paper".equals(clientChoice))) { + ps.println("Invalid Choice"); + continue; + } + Random rand = new Random(); - int serverChoiceInt = rand.nextInt(0,3); + int serverChoiceInt = rand.nextInt(0, 3); String serverChoiceStr; - + serverChoiceStr = switch (serverChoiceInt) { - case 0 -> "rock"; - case 1 -> "paper"; - case 2 -> "scissors"; - default -> "Error"; + case 0 -> + "rock"; + case 1 -> + "paper"; + case 2 -> + "scissors"; + default -> + "Error"; }; - - - if ("rock".equals(serverChoiceStr) & "paper".equals(clientChoice)){ + + if ("rock".equals(serverChoiceStr) & "paper".equals(clientChoice)) { losses++; - } - else if ("paper".equals(serverChoiceStr) & "scissors".equals(clientChoice)){ + } else if ("paper".equals(serverChoiceStr) & "scissors".equals(clientChoice)) { losses++; - } - else if ("scissors".equals(serverChoiceStr) & "rock".equals(clientChoice)){ + } else if ("scissors".equals(serverChoiceStr) & "rock".equals(clientChoice)) { losses++; - } - else if ("rock".equals(serverChoiceStr) & "scissors".equals(clientChoice)){ + } else if ("rock".equals(serverChoiceStr) & "scissors".equals(clientChoice)) { wins++; - } - else if ("scissors".equals(serverChoiceStr) & "paper".equals(clientChoice)){ + } else if ("scissors".equals(serverChoiceStr) & "paper".equals(clientChoice)) { wins++; - } - else if ("paper".equals(serverChoiceStr) & "rock".equals(clientChoice)){ + } else if ("paper".equals(serverChoiceStr) & "rock".equals(clientChoice)) { wins++; } // Send back the updated total - ps.println("Client chose: " + clientChoice + "/ Server Chose: "+ serverChoiceStr + "/ Wins: "+wins+"/ loses: "+ losses); + ps.println("Client chose: " + clientChoice + "/ Server Chose: " + serverChoiceStr + "/ Wins: " + wins + "/ loses: " + losses); ps.println("Please wait for server to choose"); - + System.out.println("Client chose: " + clientChoice); localAddress = clientConnectionSocket.getLocalAddress(); remoteAddress = clientConnectionSocket.getInetAddress(); localPort = clientConnectionSocket.getLocalPort(); remotePort = clientConnectionSocket.getPort(); - + ps.flush(); } } @@ -84,4 +88,4 @@ public class Server { } } } -} \ No newline at end of file +}