From df32d63c5b4da87946cc6f4e6eedb6c6ffdf5cc2 Mon Sep 17 00:00:00 2001 From: Yann Mulonda Date: Thu, 16 Apr 2020 22:43:29 -0500 Subject: [PATCH 1/4] create getNumberOfPlayers() outside of run() --- H5_Skunk/bin/SkunkDomain.class | Bin 6683 -> 6768 bytes H5_Skunk/src/SkunkDomain.java | 11 +++++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/H5_Skunk/bin/SkunkDomain.class b/H5_Skunk/bin/SkunkDomain.class index aafa96a4069486555100906be03b1935d2a1d115..658341eb5f6194ff2e7e4972c17906a6244b3a54 100644 GIT binary patch literal 6768 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 NFGpe`cQkRte*ozrDFFZg literal 6683 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 Date: Thu, 16 Apr 2020 23:26:18 -0500 Subject: [PATCH 2/4] create getPlayersName() outside of run() --- H5_Skunk/bin/SkunkDomain.class | Bin 6768 -> 6873 bytes H5_Skunk/src/SkunkDomain.java | 25 ++++++++++++++++++++----- 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/H5_Skunk/bin/SkunkDomain.class b/H5_Skunk/bin/SkunkDomain.class index 658341eb5f6194ff2e7e4972c17906a6244b3a54..ad38b12184d37cd2933aafedba586f14b7a382b1 100644 GIT binary patch literal 6873 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 N{!2@pOHxDC{Tb9zNUQ(= literal 6768 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 NFGpe`cQkRte*ozrDFFZg diff --git a/H5_Skunk/src/SkunkDomain.java b/H5_Skunk/src/SkunkDomain.java index fad5c98..3e76b27 100644 --- a/H5_Skunk/src/SkunkDomain.java +++ b/H5_Skunk/src/SkunkDomain.java @@ -30,18 +30,24 @@ public SkunkDomain(SkunkUI ui) this.oneMoreRoll = false; } - private int getNumberOfPlayers() +// everything is packed inside the run method. This practice makes the code hard to read and understand +// and even very hard to debug. +// The run method have way to many tasks, does many things and has so many responsibilities. +// To improve its legibility and structure; I'm going to create methods that are easy to read, +// well structure and perform one task. + +// this method will get the number of players and pass them to other method when needed. + public int getNumberOfPlayers() { String numberPlayersString = skunkUI.promptReadAndReturn("How many players?"); this.numberOfPlayers = Integer.parseInt(numberPlayersString); return this.numberOfPlayers; } - - public boolean run() + +// this method getPlayersNames and will pass them to the run method + public void getPlayersNames() { - ui.println("Welcome to Skunk 0.47\n"); - int numberOfPlayers = getNumberOfPlayers(); for (int playerNumber = 0; playerNumber < numberOfPlayers; playerNumber++) @@ -50,6 +56,15 @@ public boolean run() playerNames[playerNumber] = StdIn.readLine(); this.players.add(new Player(50)); } + } + + public boolean run() + { + ui.println("Welcome to Skunk 0.47\n"); + + // getting players info before the game begin + getPlayersNames(); + activePlayerIndex = 0; activePlayer = players.get(activePlayerIndex); From 3e64ab159c94776dab198703f6f850fa1f2bcfee Mon Sep 17 00:00:00 2001 From: Yann Mulonda Date: Thu, 16 Apr 2020 23:57:02 -0500 Subject: [PATCH 3/4] create a method that procees roll outsite of run method --- H5_Skunk/bin/SkunkDomain.class | Bin 6873 -> 6900 bytes H5_Skunk/src/SkunkDomain.java | 35 +++++++++++++++++---------------- 2 files changed, 18 insertions(+), 17 deletions(-) diff --git a/H5_Skunk/bin/SkunkDomain.class b/H5_Skunk/bin/SkunkDomain.class index ad38b12184d37cd2933aafedba586f14b7a382b1..4e78e382e41e938f7695c06127a26e1541de6933 100644 GIT binary patch literal 6900 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 literal 6873 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 N{!2@pOHxDC{Tb9zNUQ(= diff --git a/H5_Skunk/src/SkunkDomain.java b/H5_Skunk/src/SkunkDomain.java index 3e76b27..a28aa22 100644 --- a/H5_Skunk/src/SkunkDomain.java +++ b/H5_Skunk/src/SkunkDomain.java @@ -57,6 +57,21 @@ public void getPlayersNames() this.players.add(new Player(50)); } } + +// This method process the last roll. Which also remove duplicates while looping wantsToRoll + public void processLastRoll(int number, boolean value) + { + ui.println(number + " Skunk! You lose the turn, the turn score, plus pay " + number + " chip to the kitty"); + kitty += number; + activePlayer.setNumberChips(activePlayer.getNumberChips() - number); + activePlayer.setTurnScore(0); + + if (number == 4) + { + activePlayer.setRoundScore(0); + } + value = false; + } public boolean run() { @@ -83,32 +98,18 @@ public boolean run() skunkDice.roll(); if (skunkDice.getLastRoll() == 2) { - ui.println("Two Skunks! You lose the turn, the round score, plus pay 4 chips to the kitty"); - kitty += 4; - activePlayer.setNumberChips(activePlayer.getNumberChips() - 4); - activePlayer.setTurnScore(0); - activePlayer.setRoundScore(0); - wantsToRoll = false; + this.processLastRoll(4, wantsToRoll); break; } else if (skunkDice.getLastRoll() == 3) { - ui.println("Skunks and Deuce! You lose the turn, the turn score, plus pay 2 chips to the kitty"); - kitty += 2; - activePlayer.setNumberChips(activePlayer.getNumberChips() - 2); - activePlayer.setTurnScore(0); - wantsToRoll = false; + this.processLastRoll(2, wantsToRoll); break; } else if (skunkDice.getDie1().getLastRoll() == 1 || skunkDice.getDie2().getLastRoll() == 1) { - ui.println("One Skunk! You lose the turn, the turn score, plus pay 1 chip to the kitty"); - kitty += 1; - activePlayer.setNumberChips(activePlayer.getNumberChips() - 1); - activePlayer.setTurnScore(0); - wantsToRoll = false; + this.processLastRoll(1, wantsToRoll); break; - } activePlayer.setRollScore(skunkDice.getLastRoll()); From de3f3b0f821ad60490ceccdc28200564ad3f1158 Mon Sep 17 00:00:00 2001 From: Yann Mulonda Date: Fri, 17 Apr 2020 09:31:10 -0500 Subject: [PATCH 4/4] review spelling error --- H5_Skunk/bin/SkunkDomain.class | Bin 6900 -> 6903 bytes H5_Skunk/src/SkunkDomain.java | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/H5_Skunk/bin/SkunkDomain.class b/H5_Skunk/bin/SkunkDomain.class index 4e78e382e41e938f7695c06127a26e1541de6933..b2dc1f8e3a6a66c46e5edfcbfb0d38fbc938aaea 100644 GIT binary patch delta 22 dcmexj`rUNHL{?5wh2)IP0*zwL&C^+9MFD4e2m=5B delta 19 acmexv`o(m^L{>H-h2)IPg3Ys7V?_Z`atAyB diff --git a/H5_Skunk/src/SkunkDomain.java b/H5_Skunk/src/SkunkDomain.java index a28aa22..99fde4c 100644 --- a/H5_Skunk/src/SkunkDomain.java +++ b/H5_Skunk/src/SkunkDomain.java @@ -61,7 +61,7 @@ public void getPlayersNames() // This method process the last roll. Which also remove duplicates while looping wantsToRoll public void processLastRoll(int number, boolean value) { - ui.println(number + " Skunk! You lose the turn, the turn score, plus pay " + number + " chip to the kitty"); + ui.println(number + " Skunk! You lose the turn, the turn score, plus pay " + number + " chip(s) to the kitty"); kitty += number; activePlayer.setNumberChips(activePlayer.getNumberChips() - number); activePlayer.setTurnScore(0);