import java.util.*; import javax.swing.*; public class GameTest{ public static void main(String args[]) { int shouldRun = 1; while (shouldRun == 1){ System.out.println("Play a(nother) game? Enter 1 for Yes; 0 for No."); // Asks Users if they wish to play the Game. Scanner in = new Scanner(System.in); if (in.nextInt() == 0) { shouldRun = 0; System.out.println("Goodbye!"); // Goodbye displayed and program ends, if No is Selected. }else{ // Game Runs if No is not Selected. System.out.println("Enter the target score."); // Asks User to input Target Score to Win the Game. int wins = in.nextInt(); // Inputs the Number of Wins needed. Player Player1 = new Player(); Player Player2 = new Player(); while ((Player1.getWins() != wins) && (Player2.getWins() != wins)){ // Game Continues to play While there is no Winner. int player1Move = Player1.useMove(); int player2Move = Player2.useMove(); // Rock = 0, Paper = 1, Scissors = 2 if ((player1Move == 0) && (player2Move == 0)){ // Tie Game } else if ((player1Move == 0) && (player2Move == 1)){ Player2.setWins(); // Player 2 Wins } else if ((player1Move == 0) && (player2Move == 2)){ Player1.setWins(); // Player 1 Win } else if ((player1Move == 1) && (player2Move == 0)){ Player1.setWins(); // Player 1 Wins } else if ((player1Move == 1) && (player2Move == 1)){ // Tie Game } else if ((player1Move == 1) && (player2Move == 2)){ Player2.setWins(); // Player 2 Wins } else if ((player1Move == 2) && (player2Move == 0)){ Player2.setWins(); // Player 2 Wins } else if ((player1Move == 2) && (player2Move == 1)){ Player1.setWins(); // Player 1 Wins } else if ((player1Move == 2) && (player2Move == 2)){ // Tie Game } JOptionPane.showMessageDialog(null, "Player 1 chose: " + player1Move + "\nPlayer 2 chose: " + player2Move + "\nPlayer 1: " + Player1.getWins() + "\nPlayer 2: " + Player2.getWins() + "\nPoints to Win: " + wins); } } } } } class Player{ private int wins; private String winner; public Player(){ wins = 0; } public int getWins(){ return wins; } public void setWins(){ wins++; } public String getWinner(Player Player1, Player Player2){ if(Player1.getWins() > Player2.getWins()){ winner = "Player 1"; return winner; } else { winner = "Player 2"; return winner; } } public int useMove(){ Random r = new Random(); int play = r.nextInt(3); return play; } }