diff --git a/bin/csv/highscores.csv b/bin/csv/highscores.csv index e69de29..e361fb1 100644 --- a/bin/csv/highscores.csv +++ b/bin/csv/highscores.csv @@ -0,0 +1,10 @@ +2024-04-30: Selim: 172 +___: ___: 0 +___: ___: 0 +___: ___: 0 +___: ___: 0 +___: ___: 0 +___: ___: 0 +___: ___: 0 +___: ___: 0 +___: ___: 0 diff --git a/bin/domain/Box.class b/bin/domain/Box.class index 28040e7..f5e47de 100644 Binary files a/bin/domain/Box.class and b/bin/domain/Box.class differ diff --git a/bin/facade/YahtzeeGame.class b/bin/facade/YahtzeeGame.class index 81c150f..3e74296 100644 Binary files a/bin/facade/YahtzeeGame.class and b/bin/facade/YahtzeeGame.class differ diff --git a/src/csv/highscores.csv b/src/csv/highscores.csv index e69de29..e361fb1 100644 --- a/src/csv/highscores.csv +++ b/src/csv/highscores.csv @@ -0,0 +1,10 @@ +2024-04-30: Selim: 172 +___: ___: 0 +___: ___: 0 +___: ___: 0 +___: ___: 0 +___: ___: 0 +___: ___: 0 +___: ___: 0 +___: ___: 0 +___: ___: 0 diff --git a/src/domain/Box.java b/src/domain/Box.java index b994e08..fe78e2a 100644 --- a/src/domain/Box.java +++ b/src/domain/Box.java @@ -23,6 +23,8 @@ public class Box { private Integer setCategorySeven; private Integer setCategoryEight; + private Integer upperBoxScore; + private int categoryTripleMatch; private int categoryFourOfAKind; private int categoryFullHouse; @@ -43,6 +45,10 @@ public class Box { private Integer setCategoryStarWarsDay; private Integer setCategoryR2D2; + private Integer lowerBoxScore; + + private Integer totalScore; + private Integer bonus; private int counter[] = new int[8]; private String savedGamemode; @@ -171,75 +177,75 @@ public class Box { ArrayList res = new ArrayList<>(); if (categoryOne > 0 && (setCategoryOne == null)) - res.add("categoryOne: " + categoryOne); + res.add("One: " + categoryOne); if (categoryTwo > 0 && (setCategoryTwo == null)) - res.add("categoryTwo: " + categoryTwo); + res.add("Two: " + categoryTwo); if (categoryThree > 0 && (setCategoryThree == null)) - res.add("categoryThree: " + categoryThree); + res.add("Three: " + categoryThree); if (categoryFour > 0 && (setCategoryFour == null)) - res.add("categoryFour: " + categoryFour); + res.add("Four: " + categoryFour); if (categoryFive > 0 && (setCategoryFive == null)) - res.add("categoryFive: " + categoryFive); + res.add("Five: " + categoryFive); if (categorySix > 0 && (setCategorySix == null)) - res.add("categorySix: " + categorySix); + res.add("Six: " + categorySix); if (categorySeven > 0 && (setCategorySeven == null)) - res.add("categorySeven: " + categorySeven); + res.add("Seven: " + categorySeven); if (categoryEight > 0 && (setCategoryEight == null)) - res.add("categoryEight: " + categoryEight); + res.add("Eight: " + categoryEight); if (categoryTripleMatch > 0 && (setCategoryTripleMatch == null)) - res.add("categoryTripleMatch: " + categoryTripleMatch); + res.add("TripleMatch: " + categoryTripleMatch); if (categoryFourOfAKind > 0 && (setCategoryFourOfAKind == null)) - res.add("categoryFourOfAKind: " + categoryFourOfAKind); + res.add("FourOfAKind: " + categoryFourOfAKind); if (categoryFullHouse > 0 && (setCategoryFullHouse == null)) - res.add("categoryFullHouse: " + categoryFullHouse); + res.add("FullHouse: " + categoryFullHouse); if (categorySmallStreet > 0 && (setCategorySmallStreet == null)) - res.add("categorySmallStreet: " + categorySmallStreet); + res.add("SmallStreet: " + categorySmallStreet); if (categoryBigStreet > 0 && (setCategoryBigStreet == null)) - res.add("categoryBigStreet: " + categoryBigStreet); + res.add("BigStreet: " + categoryBigStreet); if (categoryYahtzee > 0) - res.add("categoryYahtzee: " + categoryYahtzee); + res.add("Yahtzee: " + categoryYahtzee); if (categoryChance > 0 && (setCategoryChance == null)) - res.add("categoryChance: " + categoryChance); + res.add("Chance: " + categoryChance); if (categoryStarWarsDay > 0 && (setCategoryStarWarsDay == null)) - res.add("categoryStarWarsDay: " + categoryStarWarsDay); + res.add("StarWarsDay: " + categoryStarWarsDay); if (categoryR2D2 > 0 && (setCategoryR2D2 == null)) - res.add("categoryR2D2: " + categoryR2D2); + res.add("R2D2: " + categoryR2D2); if (res.isEmpty()) { if (setCategoryOne == null) - res.add("categoryOne: " + categoryOne); + res.add("One: " + categoryOne); if (setCategoryTwo == null) - res.add("categoryTwo: " + categoryTwo); + res.add("Two: " + categoryTwo); if (setCategoryThree == null) - res.add("categoryThree: " + categoryThree); + res.add("Three: " + categoryThree); if (setCategoryFour == null) - res.add("categoryFour: " + categoryFour); + res.add("Four: " + categoryFour); if (setCategoryFive == null) - res.add("categoryFive: " + categoryFive); + res.add("Five: " + categoryFive); if (setCategorySix == null) - res.add("categorySix: " + categorySix); + res.add("Six: " + categorySix); if (setCategorySeven == null && savedGamemode.equals("Special8")) - res.add("categorySeven: " + categorySeven); + res.add("Seven: " + categorySeven); if (setCategoryEight == null && savedGamemode.equals("Special8")) - res.add("categoryEight: " + categoryEight); + res.add("Eight: " + categoryEight); if (setCategoryTripleMatch == null) - res.add("categoryTrippleMatch: " + categoryTripleMatch); + res.add("TripleMatch: " + categoryTripleMatch); if (setCategoryFourOfAKind == null) - res.add("categoryFourOfAKind: " + categoryFourOfAKind); + res.add("FourOfAKind: " + categoryFourOfAKind); if (setCategoryFullHouse == null) - res.add("categoryFullHouse: " + categoryFullHouse); + res.add("FullHouse: " + categoryFullHouse); if (setCategorySmallStreet == null) - res.add("categorySmallStreet: " + categorySmallStreet); + res.add("SmallStreet: " + categorySmallStreet); if (setCategoryBigStreet == null) - res.add("categoryBigStreet: " + categoryBigStreet); + res.add("BigStreet: " + categoryBigStreet); if (setCategoryYahtzee == null) - res.add("categoryYahtzee: " + categoryYahtzee); + res.add("Yahtzee: " + categoryYahtzee); if (setCategoryChance == null) - res.add("categoryChance: " + categoryChance); + res.add("Chance: " + categoryChance); if (setCategoryStarWarsDay == null) - res.add("categoryStarWarsDay: " + categoryStarWarsDay); + res.add("StarWarsDay: " + categoryStarWarsDay); if (setCategoryR2D2 == null && savedGamemode.equals("Special8")) - res.add("categoryR2D2: " + categoryR2D2); + res.add("R2D2: " + categoryR2D2); } return res; @@ -247,33 +253,33 @@ public class Box { public void selectOption(String option) { - if (option.equals("categoryOne")) + if (option.equals("One")) setCategoryOne = categoryOne; - else if (option.equals("categoryTwo")) + else if (option.equals("Two")) setCategoryTwo = categoryTwo; - else if (option.equals("categoryThree")) + else if (option.equals("Three")) setCategoryThree = categoryThree; - else if (option.equals("categoryFour")) + else if (option.equals("Four")) setCategoryFour = categoryFour; - else if (option.equals("categoryFive")) + else if (option.equals("Five")) setCategoryFive = categoryFive; - else if (option.equals("categorySix")) + else if (option.equals("Six")) setCategorySix = categorySix; - else if (option.equals("categorySeven")) + else if (option.equals("Seven")) setCategorySeven = categorySeven; - else if (option.equals("categoryEight")) + else if (option.equals("Eight")) setCategoryEight = categoryEight; - else if (option.equals("categoryTripleMatch")) + else if (option.equals("TripleMatch")) setCategoryTripleMatch = categoryTripleMatch; - else if (option.equals("categoryFourOfAKind")) + else if (option.equals("FourOfAKind")) setCategoryFourOfAKind = categoryFourOfAKind; - else if (option.equals("categoryFullHouse")) + else if (option.equals("FullHouse")) setCategoryFullHouse = categoryFullHouse; - else if (option.equals("categorySmallStreet")) + else if (option.equals("SmallStreet")) setCategorySmallStreet = categorySmallStreet; - else if (option.equals("categoryBigStreet")) + else if (option.equals("BigStreet")) setCategoryBigStreet = categoryBigStreet; - else if (option.equals("categoryYahtzee")) { + else if (option.equals("Yahtzee")) { if (setCategoryYahtzee != null) { setCategoryYahtzee += 50; if (counter[0] == 5) @@ -297,9 +303,11 @@ public class Box { } else if (option.equals("categoryChance")) setCategoryChance = categoryChance; - else if (option.equals("categoryStarWarsDay")) + else if (option.equals("Chance")) + setCategoryChance = categoryChance; + else if (option.equals("StarWarsDay")) setCategoryStarWarsDay = categoryStarWarsDay; - else if (option.equals("categoryR2D2")) + else if (option.equals("R2D2")) setCategoryR2D2 = categoryR2D2; } @@ -392,47 +400,96 @@ public class Box { StringBuilder sb = new StringBuilder(); if (savedGamemode.equals("Special8")) { - sb.append("categoryOne: " + nullCheck(setCategoryOne) + "\n"); - sb.append("categoryTwo: " + nullCheck(setCategoryTwo) + "\n"); - sb.append("categoryThree: " + nullCheck(setCategoryThree) + "\n"); - sb.append("categoryFour: " + nullCheck(setCategoryFour) + "\n"); - sb.append("categoryFive: " + nullCheck(setCategoryFive) + "\n"); - sb.append("categorySix: " + nullCheck(setCategorySix) + "\n"); - sb.append("categorySeven: " + nullCheck(setCategorySeven) + "\n"); - sb.append("categoryEight: " + nullCheck(setCategoryEight) + "\n"); - sb.append("\nbonus: " + nullCheck(bonus) + "\n"); sb.append("\n--------------------------\n\n"); - sb.append("categoryTripleMatch: " + nullCheck(setCategoryTripleMatch) + "\n"); - sb.append("categoryFourOfAKind: " + nullCheck(setCategoryFourOfAKind) + "\n"); - sb.append("categoryFullHouse: " + nullCheck(setCategoryFullHouse) + "\n"); - sb.append("categorySmallStreet: " + nullCheck(setCategorySmallStreet) + "\n"); - sb.append("categoryBigStreet: " + nullCheck(setCategoryBigStreet) + "\n"); - sb.append("categoryYahtzee: " + nullCheck(setCategoryYahtzee) + "\n"); - sb.append("categoryChance: " + nullCheck(setCategoryChance) + "\n"); - sb.append("categoryStarWarsDay: " + nullCheck(setCategoryStarWarsDay) + "\n"); - sb.append("categoryR2D2: " + nullCheck(setCategoryR2D2) + "\n"); + sb.append("One: " + nullCheck(setCategoryOne) + "\n"); + sb.append("Two: " + nullCheck(setCategoryTwo) + "\n"); + sb.append("Three: " + nullCheck(setCategoryThree) + "\n"); + sb.append("Four: " + nullCheck(setCategoryFour) + "\n"); + sb.append("Five: " + nullCheck(setCategoryFive) + "\n"); + sb.append("Six: " + nullCheck(setCategorySix) + "\n"); + sb.append("Seven: " + nullCheck(setCategorySeven) + "\n"); + sb.append("Eight: " + nullCheck(setCategoryEight) + "\n"); + sb.append("\nbonus: " + nullCheck(bonus) + "\n"); + sb.append("\ntotal upper box: " + nullCheck(upperBoxScore) + "\n"); + sb.append("\n--------------------------\n\n"); + sb.append("TripleMatch: " + nullCheck(setCategoryTripleMatch) + "\n"); + sb.append("FourOfAKind: " + nullCheck(setCategoryFourOfAKind) + "\n"); + sb.append("FullHouse: " + nullCheck(setCategoryFullHouse) + "\n"); + sb.append("SmallStreet: " + nullCheck(setCategorySmallStreet) + "\n"); + sb.append("BigStreet: " + nullCheck(setCategoryBigStreet) + "\n"); + sb.append("Yahtzee: " + nullCheck(setCategoryYahtzee) + "\n"); + sb.append("Chance: " + nullCheck(setCategoryChance) + "\n"); + sb.append("StarWarsDay: " + nullCheck(setCategoryStarWarsDay) + "\n"); + sb.append("R2D2: " + nullCheck(setCategoryR2D2) + "\n"); + sb.append("\ntotal lower box: " + nullCheck(lowerBoxScore) + "\n"); + sb.append("\n--------------------------\n\n"); + sb.append("\ntotal score: " + nullCheck(totalScore) + "\n"); } else { - sb.append("categoryOne: " + nullCheck(setCategoryOne) + "\n"); - sb.append("categoryTwo: " + nullCheck(setCategoryTwo) + "\n"); - sb.append("categoryThree: " + nullCheck(setCategoryThree) + "\n"); - sb.append("categoryFour: " + nullCheck(setCategoryFour) + "\n"); - sb.append("categoryFive: " + nullCheck(setCategoryFive) + "\n"); - sb.append("categorySix: " + nullCheck(setCategorySix) + "\n"); - sb.append("\nbonus: " + nullCheck(bonus) + "\n"); sb.append("\n--------------------------\n\n"); - sb.append("categoryTripleMatch: " + nullCheck(setCategoryTripleMatch) + "\n"); - sb.append("categoryFourOfAKind: " + nullCheck(setCategoryFourOfAKind) + "\n"); - sb.append("categoryFullHouse: " + nullCheck(setCategoryFullHouse) + "\n"); - sb.append("categorySmallStreet: " + nullCheck(setCategorySmallStreet) + "\n"); - sb.append("categoryBigStreet: " + nullCheck(setCategoryBigStreet) + "\n"); - sb.append("categoryYahtzee: " + nullCheck(setCategoryYahtzee) + "\n"); - sb.append("categoryChance: " + nullCheck(setCategoryChance) + "\n"); - sb.append("categoryStarWarsDay: " + nullCheck(setCategoryStarWarsDay) + "\n"); + sb.append("One: " + nullCheck(setCategoryOne) + "\n"); + sb.append("Two: " + nullCheck(setCategoryTwo) + "\n"); + sb.append("Three: " + nullCheck(setCategoryThree) + "\n"); + sb.append("Four: " + nullCheck(setCategoryFour) + "\n"); + sb.append("Five: " + nullCheck(setCategoryFive) + "\n"); + sb.append("Six: " + nullCheck(setCategorySix) + "\n"); + sb.append("\nbonus: " + nullCheck(bonus) + "\n"); + sb.append("\ntotal upper box: " + nullCheck(upperBoxScore) + "\n"); + sb.append("\n--------------------------\n\n"); + sb.append("TripleMatch: " + nullCheck(setCategoryTripleMatch) + "\n"); + sb.append("FourOfAKind: " + nullCheck(setCategoryFourOfAKind) + "\n"); + sb.append("FullHouse: " + nullCheck(setCategoryFullHouse) + "\n"); + sb.append("SmallStreet: " + nullCheck(setCategorySmallStreet) + "\n"); + sb.append("BigStreet: " + nullCheck(setCategoryBigStreet) + "\n"); + sb.append("Yahtzee: " + nullCheck(setCategoryYahtzee) + "\n"); + sb.append("Chance: " + nullCheck(setCategoryChance) + "\n"); + sb.append("StarWarsDay: " + nullCheck(setCategoryStarWarsDay) + "\n"); + sb.append("\ntotal lower box: " + nullCheck(lowerBoxScore) + "\n"); + sb.append("\n--------------------------\n\n"); + sb.append("\ntotal score: " + nullCheck(totalScore) + "\n"); } return sb.toString(); } + public void updateUpperBoxScore(){ + + if(savedGamemode.equals("Special8")) + + this.upperBoxScore = nullCheckInt(setCategoryOne) + nullCheckInt(setCategoryTwo) + nullCheckInt(setCategoryThree) + nullCheckInt(setCategoryFour) + + nullCheckInt(setCategoryFive) + nullCheckInt(setCategorySix) + nullCheckInt(setCategorySeven) + nullCheckInt(setCategoryEight) + nullCheckInt(bonus); + + + + else + + this.upperBoxScore = nullCheckInt(setCategoryOne) + nullCheckInt(setCategoryTwo) + nullCheckInt(setCategoryThree) + nullCheckInt(setCategoryFour) + + nullCheckInt(setCategoryFive) + nullCheckInt(setCategorySix) + nullCheckInt(bonus); + + + + } + + public void updateLowerBoxScore(){ + + if(savedGamemode.equals("Special8")) + + this.lowerBoxScore = nullCheckInt(setCategoryTripleMatch) + nullCheckInt(setCategoryFourOfAKind) + nullCheckInt(setCategoryFullHouse) + nullCheckInt(setCategorySmallStreet) + + nullCheckInt(setCategoryBigStreet) + nullCheckInt(setCategoryYahtzee) + nullCheckInt(setCategoryChance) + nullCheckInt(setCategoryStarWarsDay) + nullCheckInt(setCategoryR2D2); + + + + else + + this.lowerBoxScore = nullCheckInt(setCategoryTripleMatch) + nullCheckInt(setCategoryFourOfAKind) + nullCheckInt(setCategoryFullHouse) + nullCheckInt(setCategorySmallStreet) + + nullCheckInt(setCategoryBigStreet) + nullCheckInt(setCategoryYahtzee) + nullCheckInt(setCategoryChance) + nullCheckInt(setCategoryStarWarsDay); + + } + + public void updateTotalScore(){ + + this.totalScore = nullCheckInt(upperBoxScore) + nullCheckInt(lowerBoxScore); + } + public String nullCheck(Integer i) { if (i == null) diff --git a/src/facade/YahtzeeGame.java b/src/facade/YahtzeeGame.java index addadc9..96cbb9e 100644 --- a/src/facade/YahtzeeGame.java +++ b/src/facade/YahtzeeGame.java @@ -118,6 +118,9 @@ public class YahtzeeGame { players.get(player).box.resetOptions(); players.get(player).getNewHand(); players.get(player).box.updateBonus(); + players.get(player).box.updateUpperBoxScore(); + players.get(player).box.updateLowerBoxScore(); + players.get(player).box.updateTotalScore(); } @@ -405,8 +408,8 @@ public class YahtzeeGame { for (int i = 0; i < 10; i++) { - out.print(LocalDate.now() + ": " + players.get(player).name + ": " - + returnTotalPoints(player)); + out.print(highscores[i][0] + ": " + highscores[i][1] + ": " + + highscores[i][2]); out.println(); }