diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/Q2/RockPaperScissorsLizardSpock.java | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/src/Q2/RockPaperScissorsLizardSpock.java b/src/Q2/RockPaperScissorsLizardSpock.java index 4dee486..715dcb4 100644 --- a/src/Q2/RockPaperScissorsLizardSpock.java +++ b/src/Q2/RockPaperScissorsLizardSpock.java @@ -1,7 +1,6 @@ package Q2; -import java.util.Random; -import java.util.Scanner; +import java.util.*; public class RockPaperScissorsLizardSpock { private int consecutiveWins = 0; @@ -72,11 +71,23 @@ public class RockPaperScissorsLizardSpock { } } - public int determineWinner(int player1Roll, int player2Roll) { + private int determineWinner(int player1Roll, int player2Roll) { if (player1Roll == player2Roll) return 0; - if (((player1Roll - player2Roll) % 5) < 3) return PLAYER1; - return PLAYER2; + switch (player1Roll) { + case SCISSORS: + return (player2Roll == PAPER || player2Roll == LIZARD) ? PLAYER1 : PLAYER2; + case PAPER: + return (player2Roll == ROCK || player2Roll == SPOCK) ? PLAYER1 : PLAYER2; + case ROCK: + return (player2Roll == LIZARD || player2Roll == SCISSORS) ? PLAYER1 : PLAYER2; + case LIZARD: + return (player2Roll == SPOCK || player2Roll == PAPER) ? PLAYER1 : PLAYER2; + case SPOCK: + return (player2Roll == SCISSORS || player2Roll == ROCK) ? PLAYER1 : PLAYER2; + default: + return 0; + } } private void puts(String message, Object... args) { |
